我最近购买了34英寸宽屏幕显示器。我正在使用戴尔显示器管理器来设置不同的窗口,使我能够整齐地打开多个Word文档等。访问窗口调整大小
当我使用Access时,我可以将应用程序窗口正确对接至屏幕的1/2或1/3。但是,当我打开表单(因为它可能是一个孩子?)时,它不会保留在父窗口或Dell显示管理器的范围内。
所以,我的想法是调整任何弹出窗体的大小相同的左,顶部,宽度和高度的父访问窗口的尺寸。
然而,尽管尝试了几种不同的技术,我还没有能够实现这一点。
有人有什么想法吗?
谢谢!
编辑:谢谢Jashin。我已经实现了你的代码,但是表单仍然没有按照我的预期显示出来。这是我使用的代码:
SetWindowPos hWndChild, hWndParent, mainRECT.wdw_left, mainRECT.wdw_top, mainRECT.wdw_right, mainRECT.wdw_bottom, &H4
加载窗体时的高度和左稍微偏离,但形式是真的瘦了。我试图从mainRECT.wdw_right获取宽度 - mainRECT.wdw_left,但它有相同的结果。
最终编辑:了解了@Jashin提供的一些代码。下面是最终代码:
Dim hWndParent As LongPtr
Dim hWndChild As LongPtr
Dim mainRECT As RECT
hWndParent = Application.hWndAccessApp
hWndChild = Me.hwnd
GetWindowRect hWndParent, mainRECT
SetParent hWndChild, hWndParent
SetWindowPos hWndChild, 0, mainRECT.wdw_left, mainRECT.wdw_top, mainRECT.wdw_right - mainRECT.wdw_left, mainRECT.wdw_bottom, &H4
Me.SetFocus
DoCmd.MoveSize 0, 0`