Delphi中Form的position属性与代码自定义窗体位置


 通过Form的Position属性可设置窗体的初始位置,如选择DesktopCenter为桌面中心,ScreenCenter为屏幕中心,等等。 这个属性在很多时候简化了程序代码。

  但是,如果设置了position为ScreenCenter和DesktopCenter等,在窗体oncreate和onshow事件中使用代码控制窗体的位置就会不成功了,无论设置Self.Top,Self.Left为什么值,最后窗体都会自动根据Position自动调整位置。

  我使用下面方法去在设置了position之后在有必要时使用代码重新调整窗体位置。

if(NeedAdjustPosition)
begin
   ///在需要调整窗体位置时要将postion属性改变
   Self.Position := poDesigned;
   Self.SetBounds(nLeft,nTop,nWidth,nHeight);
end; 

///不需要调整窗体位置时,让delphi自已根据Postion处理

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM