Option Explicit
'Declaraciones del api
'------------------------------------------------------
' PAra deshabilitar el menú y otros
Private Declare Function DeleteMenu Lib "user32" ( _
ByVal hMenu As Long, _
ByVal nPosition As Long, _
ByVal wFlags As Long) As Long
' Obtiene el Handle al menú del sistema de la ventana
Private Declare Function GetSystemMenu Lib "user32" ( _
ByVal hwnd As Long, _
ByVal bRevert As Long) As Long
Private Const MF_BYPOSITION = &H400&
Private Sub Aplicar_Cambios(ByVal El_Formulario As Form, _
ByVal Menu_Cerrar As Boolean, _
ByVal Redimensionar As Boolean, _
ByVal Mover As Boolean)
Dim Hwnd_Menu As Long
' Obtiene el Hwnd del menú para usar con el Api DeleteMenu
Hwnd_Menu = GetSystemMenu(El_Formulario.hwnd, False)
' botón Cerrar
If Menu_Cerrar Then
Call DeleteMenu(Hwnd_Menu, 6, MF_BYPOSITION)
End If
'Hace que la ventana no se pueda cambiar de tamaño
If Redimensionar Then
Call DeleteMenu(Hwnd_Menu, 2, MF_BYPOSITION)
End If
' No permite que la ventana se pueda mover
If Mover Then
Call DeleteMenu(Hwnd_Menu, 1, MF_BYPOSITION)
End If
End Sub
Private Sub Form_DblClick()
Unload Me
End Sub
Private Sub Form_Load()
MsgBox " Para cerrar el formulario haz DOBLE Click en el mismo ", vbInformation
' Deshabilita el Command de cerrar, y no permite que se redimensione _
y mueva el formulario
Call Aplicar_Cambios(Me, True, True, True)
End Sub