如何使VB窗口总在最前?

来源:百度知道 编辑:UC知道 时间:2024/06/10 04:21:12
而且不会被DIRECTX全屏的程序覆盖
请写清详细代码谢谢

如果要不会被DIRECTX全屏的程序覆盖,那么加上一个timer事件,每隔一秒就把窗口显示在前面,哈哈我测试过了有效,以前学过一个学期的VB。
代码如下

Option Explicit
Const Hwndx = -1
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 Sub Form_Load()
Timer1.Enabled = True
Timer1.Interval = 1000
End Sub

Private Sub Timer1_Timer()
Dim XX As Long
XX = SetWindowPos(Me.Hwnd, Hwndx, 0, 0, 0, 0, 3)
End Sub

记住别忘加timer按钮

或者这样
建立模块
Option Explicit
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)

Private Sub Form_Load()
Dim rtn
'让窗口在顶层
rtn = SetWindowPos(Me.hwnd, -1, 0, 0, 0, 0, 3)
'取消窗口在