Inhabilitar bot贸n para cerra formulario

Kemmotar
27 de Junio del 2004
Hola a todos,

Estoy haciendo un programa en Vb, y quiero inhabilitar los botones que salen en la parte de arriba del formulario de maximizar, minimizar y cerrar.

Los botones de maximizar y minimizar ya los he inhabilitado poniendolos a false, pero no se como hacer con el bot贸n de cerrar (la x).

驴Alguien sabe c贸mo hacerlo?

Gracias, Kemmotar

Observador
27 de Junio del 2004
Si no quieres mostrar ningun boton del formulario, prueba a poner la propiedad ControlBox del Form a False y con eso quitas todos los botones... Minimmizar, Maximixar y Cerrar...

Hasta pronto...

Bartolom
27 de Junio del 2004
Se puede hacer como dice Observador, el problema es que el formulario te va a quedar sin la barra de t铆tulo (no recomendable cuando es un formulario on top que necesites mover o arrastrar)
La forma de deshabilitar el bot贸n es la siguiente:

Al principio del c贸digo del formulario donde quieras deshabilitar el bot贸n, colocas lo siguiente:

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_BYPOS = &H400&

Public Sub funQClose(ByVal prmhWnd As Long)
Dim varMenuTitulo As Long
varMenuTitulo = GetSystemMenu(prmhWnd, 0)
Call RemoveMenu(varMenuTitulo, 6, MF_BYPOS)
Call RemoveMenu(varMenuTitulo, 5, MF_BYPOS)
End Sub

Luego, en el evento Load del formulario, agregas la siguiente l铆nea

funQClose nombredetuformulario.hWnd


La otra soluci贸n ser铆a a trav茅s del evento QueryUnload de tu formulario (as铆 deshabilitas la funci贸n del bot贸n cerrar, pero el bot贸n igual queda operativo a nivel de click, o sea, puedes clickearlo, pero el bot贸n no har谩 absolutamente nada). Debes colocar esto en tu c贸digo:

Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
If UnloadMode = 0 Then
Cancel = 1
End If
End Sub


Saludos!
Bartolom
Chile

Kemmotar
27 de Junio del 2004
Gracias a los 2 por contestar.

La 2陋 forma es la que me interesa, ya que quiero que salga la barra de t铆tulo.

Voy a probarlo. Saludos, Kemmotar