VB怎么让窗口改变大小时控件也按比例改变大小?

窗口最大化或拖动改变大小时里面的控件不会跟着改变大小,要怎样才能让控件也改变大小呢?

可以用窗体的Resize事件来实现,改变窗体大小时,控件大小跟窗体成比例,不过如果最小化的时候就会出错,所以还得把最小化的事件给去了,代码如下:
Private Sub Form_Resize()
If Me.WindowState <> 1 Then '如果不是最小化
Command1.Width = Me.Width / 5 '按钮宽度是窗体的1/5
Command1.Height = Me.Height / 5 '按钮高度是窗体的1/5
End If
End Sub
参数可以自己设定,其它的也是如此,细节还得自己弄了,如果想让控件居中可以这样:
Private Sub Form_Resize()
If Me.WindowState <> 1 Then '如果不是最小化
Command1.Width = Me.Width / 5 '按钮宽度是窗体的1/5
Command1.Height = Me.Height / 5 '按钮高度是窗体的1/5
Command1.Left = (Me.Width - Command1.Width) / 2 '按钮左边
Command1.Top = (Me.Height - Command1.Height) / 2 '按钮顶边
End If
End Sub
这样就可以随窗体改变而改变了。
温馨提示:答案为网友推荐,仅供参考
相似回答