Inhabilitar X del Form

Iniciado por juanjoxx, 15 Abril 2006, 18:39 PM

0 Miembros y 1 Visitante están viendo este tema.

juanjoxx

hi a todos lo pro ... ;D
alli va la duda ?
como hago para Inhabilitar la X del form .... :huh:
ty a todos los pro...
Juanjo ....

XP.

Hay varias formas

la más facil es ir a las propiedades del formulario y poner la propiedad "ControlBox" en "False" pero de esa manera quedan inhabilitados los botones de Cerrar, Minimizar y Maximizar.

y la otra mediante codigo

En un modulo pones esto:
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
'
Global Const MF_BYCOMMAND = &H0&
Global Const MF_ENABLED = &H0&
Global Const MF_GRAYED = &H1&
'
Public Const SC_CLOSE = &HF060&
' Básicamente lo que se hace es dibujar una caba sobre el botón actual
'la cual lo bloquea


y en el formulario principal esto:
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, "Close")
End Sub
Private Sub Form_Load()
Bloquear_Cerrar ' llamamos a nuestro evento
End Sub


juanjoxx

Gracias pro muy buena ....... ;D   
Juanjo ....

VirucKingX

Para q se complican la vida con modulos, esto es muxo mas facil y ademas la X se ve igual

CitarOption Explicit

Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
    On Error Resume Next
           If UnloadMode <> 1 Then
        Cancel = True
       End If
End Sub

Bye


Bye

_Sergi_

CitarPara q se complican la vida con modulos

xD Tú también te estas complicando la vida!! (que ironía eh)
En el evento QueryUnload escribe

Cancel = 1

Y ya está!!!
Proyecto de Ingeniero

juanjoxx

las dos son muy buenas...  ;D
pero todo depende de como quieres q se vea en tu interface ;D
Juanjo ....