Вопрос
Как убрать кнопочку [X] из правого верхнего угла формы, а кнопки «Свернуть» и «Развернуть» оставить? Или как заблокировать эту кнопку, чтобы юзер не мог на нее нажать.
Ответ
Private Declare Function GetSystemMenu Lib "user32" (ByVal hwnd As Long, _
ByVal bRevert As Long) As Long
Private Declare Function DeleteMenu Lib "user32" (ByVal hMenu As Long, ByVal, _
nPosition As Long, ByVal wFlags As Long) As Long
Private Declare Function DrawMenuBar Lib "user32" (ByVal hwnd As Long) As _
Long
Const SC_CLOSE = &HF060
Const MF_BYCOMMAND = &H0
Public Sub DisableXbutton(ByVal frmHwnd As Long)
Dim hMenu As Long
hMenu = GetSystemMenu(frmHwnd, 0&)
If hMenu Then
Call DeleteMenu(hMenu, SC_CLOSE, MF_BYCOMMAND)
DrawMenuBar (frmHwnd)
End If
End Sub
Private Sub Form_Load()
DisableXbutton (Me.hwnd)
End Sub
Можно и так
Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
If UnloadMode = vbFormControlMenu Then
Cancel = True
End If
End Sub
vitarada
Copyright 2000-2004 Сообщество Чайников
Контактная информация