在vb中,怎样使一个窗体一直放最上面!要源代码!谢谢了哦!

来源:百度知道 编辑:UC知道 时间:2024/05/31 11:12:43

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

Const HWND_TOPMOST = -1
Const SWP_NOMOVE = &H2
Const SWP_NOSIZE = &H1
Const SWP_NOZORDER = &H8

Sub SetFormTopmost(TheForm As Form)

SetWindowPos TheForm.hwnd, HWND_TOPMOST, 0, 0, 0, 0, _
SWP_NOZORDER + SWP_NOMOVE + SWP_NOSIZE

End Sub

Sub Form_Load()

SetFormTopmost Me ''只需要改动这里,ME换成你想放在最前的窗体名

End Sub

这是个API
声明放在开头
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

在form_load下加上
SetWindowPos Me.hwnd, -1, 0, 0, 0, 0, &H1