回复 楼主 sl亮哥
&&&&&&&&& 根据象素自动调整大小 Start .&&&&&&&&&&&
Local OldHeight ,OldWidth,ChangeHeight,ChangeWidth
OldHeight=600
OldWidth=800
ChangeHeight=0 &&新解析度与800*600解析度的高度差
ChangeWidth=0 &&新解析度与800*600解析度的宽度差
Sysmetric(1) &&取得目前解析度的高度
Sysmetric(2) &&取得目前解析度的宽度
If Sysmetric(1)#OldWidth
ChangeHeight=Sysmetric(2)/OldHeight
ChangeWidth=Sysmetric(1)/OldWidth
**变更每一个控件的大小
For i=1 to This.ControlCount
With This.Controls(I)
.Height=.Height*ChangeHeight
.Width=.Width*ChangeWidth
.Top=.Top*ChangeHeight
.Left=.Left*ChangeWidth
EndWith
EndFor
**变更表单外框
With ThisForm
.Height=.Height*ChangeHeight
.Width=.Width*ChangeWidth
*.Top=.Top*ChangeHeight
*.Left=.Left*ChangeWidth
*.top=abs(Sysmetric(2)-.Height)/2
*.left=(Sysmetric(1)-.width-8*ChangeWidth)/2
.autocenter=.t.
EndWith
Endif
ThisForm.Refresh