首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >VBA在双屏幕上分散的用户表单(笔记本电脑17“vs屏幕27")

VBA在双屏幕上分散的用户表单(笔记本电脑17“vs屏幕27")
EN

Stack Overflow用户
提问于 2020-03-26 22:36:50
回答 1查看 35关注 0票数 1

当在双屏幕上显示不同大小的用户表单时,我遇到了这个奇怪的问题(即使它们都是1920x1080)

因此,我将我的17英寸笔记本电脑连接到三星27英寸显示器上。

我在初始化时使用了非常著名的代码:

代码语言:javascript
运行
复制
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个显示器连接到我的笔记本电脑上,并关闭笔记本电脑,它就会正常工作。

但是,如果我的笔记本电脑是打开的,并且我加载了用户表单,则所有控件似乎都不在适当的位置。问题是,只有当应用程序在显示器上处于活动状态时才会发生这种情况,如果它在笔记本电脑上打开,则所有内容都会正确显示

设计模式的图像:

加载用户表单时,它看起来如下所示:

当我拖动用户表单(只有1个像素)时,用户表单可以正确显示:

有什么办法可以解决这个问题吗?我尝试了几种方法,比如在initialize上重新设置每个控件的宽度和高度,codewise等等,但都没有成功。

我在谷歌上看了大概3个小时,还是找不到任何方法来帮助我。

也许一个你专业的人有神奇的解决方案?

提前感谢,致以亲切的问候!

EN

回答 1

Stack Overflow用户

发布于 2020-03-26 23:45:59

FaneDuru建议起作用了,但是您需要将代码放在activate事件中,而不是放在initialize事件中

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60869693

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档