在尺寸不同的双屏上显示用户表单时,我遇到了一个奇怪的问题(即使它们都是1920 x 1080)
所以我将17英寸的笔记本电脑挂在了三星的27英寸显示器上。
我在初始化时使用了众所周知的代码
Private Sub UserForm_Initialize()
Me.StartUpPosition = 0
Me.Left = Application.Left + (0.5 * Application.Width) - (0.5 * Me.Width)
Me.Top = Application.Top + (0.5 * Application.Height) - (0.5 * Me.Height)
End Sub
如果我将2台显示器挂在笔记本电脑上,然后关闭笔记本电脑,这应该可以正常工作。
但是,如果我的笔记本电脑是打开的,并且我加载了用户窗体,则所有控件似乎都不在位。 唯一的问题是,只有当应用程序在监视器上处于活动状态时,才会发生这种情况;如果在笔记本电脑上打开了该应用程序,则一切都可以正确显示
反正有解决此问题的方法吗? 我尝试了几种方法,例如在初始化代码时重新设置每个控件的宽度和高度,等等,都没有成功。
在Google上浏览了大约3个小时,找不到任何帮助我的方法。
也许您的Pro拥有神奇的解决方案?
预先感谢, 亲切的问候!
答案 0 :(得分:0)
FaneDuru的建议奏效了, 但是您无需将代码放入initialize事件中,而是将代码放入Activate事件中