在文章如何在vba中用api函数SetWindowPos调整窗口的大小 中介绍了用api函数调整窗口大小和位置的方法。
SetWindowPos函数除了可以调整窗口大小和位置,还可以设置窗口的Z序,可以将窗口置于Z序的顶端,也可以将窗户置于Z序的底部,还可以将窗口长期置顶。
以下代码是用api函数SetWindowPos将窗口强制置顶:
Public Declare Function SetWindowPos Lib "user32" (ByVal hwnd As Long, ByVal hWndInsertAfter As Long, ByVal x As Long, ByVal y As Long, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As Long Const HWND_TOPMOST = -1 Const SWP_NOMOVE = &H2 Const SWP_NOSIZE = &H1 Const SWP_NOZORDER = &H4 Sub QQ1722187970() Dim iHwnd iHwnd = Excel.Application.hwnd 'HWND_TOPMOST 表示将窗口强制置顶,SWP_NOMOVE Or SWP_NOSIZE表示不改变原窗口的位置和大小。 SetWindowPos iHwnd, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOMOVE Or SWP_NOSIZE End Sub
发表评论