属性ScaleWidth和Scale--Height分别用来表示对象的宽度和高度值,对于窗体,ScaleWidth和ScaleHeight表示的窗体宽度和高度不包括窗体的边框大小,而width和height用法与其正好相反。把它们与方法TextWidth和TextHeight以及CurrentX和CurrentY属性结合使用,可以使字符串居中显示。
例如:
Private Sub Form_Click()
Print Width
Print Height
Print ScaleWidth
Print ScaleHeight
End Sub
结果:
4800
3600
4680//此值为窗体的ScaleWidth属性值。不包括窗体左右两边边框的宽度。
3090//此值为窗体的Scaleheitht属性值。不包括窗体上下两边边框的高度。
与其相关函数配合使用:
Private Sub Form_Click()
cls
Dim a As String
a = "hello"
CurrentX=(Scalewidth-textwidth(a))/2’X坐标位置为窗体工作区的宽度值减去字符的宽度值,然后除以2,因为为窗体水平最中心的位置
CurrentY=(Scaleheight-textheight(a))/2
Print a
End Sub
运行结果,无论窗体大小如何变化,每次点击窗体,"hello"将处于窗体正中央。
但是如果想字符串位置自动随着窗体大小变化而变化,则必须更改事件:
Private Sub Form_Resize() ’Form_Resize(自动大小)事件过程,在窗体大小发生改变时触发。
cls
Dim a As String
a = "hello"
CurrentX=(Scalewidth-textwidth(a))/2
CurrentY=(Scaleheight-textheight(a))/2
Print a
End Sub