Private 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
hWnd变元是窗口的句柄;x,y是窗口的左上角的坐标;cx、cy是窗口宽度和高度;hWndInsertAfter变元是窗口清单中hWnd窗口前面的窗口句柄,有四个可选值:
序号 可 选 值 作 用
1 HWND_BOTTOM 把窗口放在窗口清单的底部
2 HWND_ 把窗口放在窗口清单的字符顺序的顶部
3 HWND_MOST 把窗口放在窗口清单的顶部
4 HWND_NOMOST 把窗口放在窗口清单的顶部,最上层窗口之下
WFlags变元为整型值,有八个可选值:
序号 可 选 值 作 用
1 SWP_DRAWFRAME 在窗口周围画一个方框
2 SWP_HIDEWINDOW 隐藏窗口
3 SWP_NOACTIVATE 不激活窗口
4 SWP_NOMOVE 保持窗口当前位置
5 SWP_NOREDRAW 窗口不自动重画
6 SWP_NOSIZE 保持窗口当前尺寸
7 SWP_NOZORDER 保持窗口在窗口清单中的当前位置
8 SWP_SHOWWINDOW 显示窗口
下面的例子程序Test演示了对函数中的以上7个变元作正确的选择后,应用程序运行后窗口总可保持在最上层,程序清单如下:
Option Explicit
Private 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
Private Const HWND_MOST = -1
Private Const SWP_SHOWWINDOWS = &H40
Private Sub Form_Load()
Dim retValue As Long
retValue = SetWindowPos(Me.hwnd,
HWND_MOST, Me.CurrentX, _
Me.CurrentY, 300, 300, SWP_SHOWWINDOWS)
End Sub
备注:编写函数声明时,整个函数声明须在一行中写完,不可提行。一般是自动从系统中得到函数声明,方法是从VB的外接程序管理中启动“API 浏览”程序,在“API 浏览”程序中找到所需的函数声明,然后复制到VB代码中。
【VB调用API函数使窗口保持在最上层】相关文章:
Vb中控件的自动排列05-07
中国大地保险公司实习报告05-07
广西壮族自治区财政厅会计继续教育报名登录入口:https://czt.gxzf.gov.cn/kjgl/05-07
2023年广东梅州中考成绩查询时间及查分入口[7月7日起]05-07
儿童舞蹈教程:国标新手上路05-07
2024年江苏中级导游等级考试准考证打印时间及入口(11月18日9:00起)05-07
2021湖北黄冈市浠水县基层医疗卫生机构专项招聘医务人员资格审查公告05-07
法院上半年工作总结05-07
2018湖南省农村信用社联合社招聘科技专业人才拟聘公告05-07
