Option Explicit Private Declare Function GetSystemMenu Lib "USER32" (ByVal hwnd As Long, ByVal bRevert As Long) As Long Private Declare Function RemoveMenu Lib "USER32" (ByVal hMenu As Long, ByVal nPosition As Long, ByVal wFlags As Long) As Long Private Const MF_BYCOMMAND = &H0& Private Const SC_CLOSE = &HF060&Private Declare Function GetWindowLong Lib "USER32" Alias "GetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long) As Long Private Declare Function SetWindowLong Lib "USER32" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long Private Const GWL_STYLE = (-16) Private Const WS_MAXIMIZEBOX = &H10000 Private Const WS_MINIMIZEBOX = &H20000Private Sub MDIForm_Load() Dim MyMenu As Long MyMenu = GetSystemMenu(Me.hwnd, 0) '得到系统菜单的句柄,Me.hwnd表示当前窗体的句柄 RemoveMenu MyMenu, SC_CLOSE, MF_BYCOMMAND '屏蔽关闭按钮
'下面代码屏蔽最大最小化按钮 Dim mdiWnd As Long mdiWnd = GetWindowLong(Me.hwnd, GWL_STYLE) mdiWnd = mdiWnd And Not (WS_MAXIMIZEBOX) And Not (WS_MINIMIZEBOX) mdiWnd = SetWindowLong(Me.hwnd, GWL_STYLE, mdiWnd) End Sub
Private Declare Function GetSystemMenu Lib "USER32" (ByVal hwnd As Long, ByVal bRevert As Long) As Long
Private Declare Function RemoveMenu Lib "USER32" (ByVal hMenu As Long, ByVal nPosition As Long, ByVal wFlags As Long) As Long
Private Const MF_BYCOMMAND = &H0&
Private Const SC_CLOSE = &HF060&Private Declare Function GetWindowLong Lib "USER32" Alias "GetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long) As Long
Private Declare Function SetWindowLong Lib "USER32" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
Private Const GWL_STYLE = (-16)
Private Const WS_MAXIMIZEBOX = &H10000
Private Const WS_MINIMIZEBOX = &H20000Private Sub MDIForm_Load()
Dim MyMenu As Long
MyMenu = GetSystemMenu(Me.hwnd, 0) '得到系统菜单的句柄,Me.hwnd表示当前窗体的句柄
RemoveMenu MyMenu, SC_CLOSE, MF_BYCOMMAND '屏蔽关闭按钮
'下面代码屏蔽最大最小化按钮
Dim mdiWnd As Long
mdiWnd = GetWindowLong(Me.hwnd, GWL_STYLE) mdiWnd = mdiWnd And Not (WS_MAXIMIZEBOX) And Not (WS_MINIMIZEBOX) mdiWnd = SetWindowLong(Me.hwnd, GWL_STYLE, mdiWnd)
End Sub
faysky2() 放过好几次了,呵呵 !!