VB6.0应用程序界面设计探讨
http://tech.ddvip.com 2006年07月29日 社区交流
本文详细介绍VB6.0应用程序界面设计探讨
按照上述方法确定窗体缩放后控件Width和Height属性值,则当窗体尺寸被调整后,控件的大小将按比例得到相应的调整。
2、按照窗体尺寸缩放比例自动调整控件在窗体中的相对位置
控件在窗体中的位置由该控件的Left和Top属性确定。程序启动后如果窗体被缩放,只要按照缩放的比例来重新调整窗体内各控件的Left和Top属性值即可。
所以根据上面介绍的原理,在窗体被缩放之后,只要按照下面的关系来设置控件的Left和Top属性值即可。
调整后控件的Left属性值=(控件原Left属性值/窗体原Left属性值)*窗体.ScaleWidth;
调整后控件的Top属性值=(控件原Top属性值/窗体原Top属性值)*窗体.ScaleHeight;
3、实现按窗体缩放比例调整控件大小及位置的具体方法
我们知道,Resize事件是窗体响应的一个事件。当窗体第一次显示或当窗体的状态被改变时(如窗体被最大化、最小化或被还原时)该事件发生。所以只要将对控件大小、位置的调整代码写入窗体的Resize事件中便可达到目的。具体可在窗体的Resize事件过程中使用对象的Move方法:
Private Sub Form_Resize()
Object.move Newleft, Newtop, NewWidth, NewHeight
End Sub
其中:
Object是需要调整大小和位置的任意一个控件的名称;
NewLeft, NewTop, NewWidth与NewHeight分别是窗体缩放后控件应有的新的Left, Top,Width与Height的属性值,它们确定了当窗体被缩放后控件的大小和位置。NewWidth, NewHeight的值可由1中的两个公式得到:NewLeft, NewTop的值可由2中的两个公式得到。
4、窗体的多控件的处理
当一个窗体中有多个控件时,如果对每一个控件都用上述方法处理显然比较繁琐。为此,以下给出一个通过编程来处理窗体内多个控件的一般方法(注意:如果窗体内有不可见的控件,则应该在程序中加入相应的代码以避免检查这些控件的尺寸,否则将出错)。
作者:务实 责编:豆豆技术应用