
02/01/2006, 09:46
|
 | Moderador | | Fecha de Ingreso: abril-2005 Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 20 años Puntos: 839 | |
Cita:
Iniciado por GeoAvila la verdad no lo recuerdo.. pero vamos a ver si podemos modificarlo aunque ando corto de tiempo en estos días..
nos vemos.. Yo pondría algo así:
En el Form...
Código:
Private NotClose As Boolean
Private Sub Command1_Click()
Salir
End Sub
Private Sub Salir()
NotClose = False
Unload Me
End Sub
Private Sub Form_Load()
NotClose = True
Bloquear_Cerrar
End Sub
Private Sub Bloquear_Cerrar()
Dim hMenu As Long
'
hMenu = GetSystemMenu(hWnd, 0)
' Deshabilitar el menú cerrar del formulario
Call ModifyMenu(hMenu, SC_CLOSE, MF_BYCOMMAND Or MF_GRAYED, -10, "Cerrar")
End Sub
Private Sub Form_Unload(Cancel As Integer)
If NotClose Then Cancel = -1
End Sub
En el módulo...
Código:
Public Declare Function GetSystemMenu Lib "user32" _
(ByVal hWnd As Long, ByVal bRevert As Long) As Long
Public Declare Function ModifyMenu Lib "user32" Alias "ModifyMenuA" _
(ByVal hMenu As Long, ByVal nPosition As Long, _
ByVal wFlags As Long, ByVal wIDNewItem As Long, _
ByVal lpString As Any) As Long
Public Declare Function DrawMenuBar Lib "user32" _
(ByVal hWnd As Long) As Long
Public Const MF_BYCOMMAND = &H0&
Public Const MF_ENABLED = &H0&
Public Const MF_GRAYED = &H1&
Public Const SC_CLOSE = &HF060&
|