CLR: .Net / Mono / Boo / Otros CLR > VB .NET
Boton Cerrar De Un Formulario
(1/1)
karolarivero:
Hola a todos
Tengo una duda, estoy tratando de que al cerrar, o sea al darle click al botón cerrar de un formulario este emita un mensaje como: ¿Esta seguro de cerrar la aplicación? Si o No, si afirma sale si no se queda en ese formulario, para ello estoy usando el siguiente código:
--- Código: Text --- Private Sub RecepcionDTrigo_Closing(ByVal sender As Object, ByVal e As_ System.ComponentModel.CancelEventArgs) Handles MyBase.Closing Dim Respuesta As MsgBoxResult Respuesta = MsgBox("¿Realmente deseas cerrar Recepción de Materia Prima?", MsgBoxStyle.DefaultButton2 Or MsgBoxStyle.Exclamation Or MsgBoxStyle.YesNo) If Respuesta = MsgBoxResult.Yes Then ' Cerrar la conexión Try If ObjetoConectar.State = ConnectionState.Open Then ObjetoConectar.Close() End If Catch End Try me.Close() End If End Sub
Pero no se porque no me funciona, si la repuesta es afirmativa no sale y el msgBox queda desplegado, si es negativa se sale. No entiendo, alguien me podria explicar?
Me parece que no estoy usado el evento correcto, si ese es el caso que puedo usar?
Saludos y Gracias por su atención
Cajami:
Hola, que tal si pruebas con esto:
--- Código: Text --- Private Sub Form1_FormClosing(ByVal sender As System.Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles MyBase.FormClosing If MessageBox.Show("¿Realmente deseas cerrar Recepción de Materia Prima?", "Sistema de .....", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2) = Windows.Forms.DialogResult.Yes Then End Else e.Cancel = True End If End Sub
Espero te sirva nos vemos :hola:
karolarivero:
Hola
Me funciono de la siguiente manera:
--- Código: Text --- Private Sub RecepcionDTrigo_FormClosing(ByVal sender As System.Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing If MessageBox.Show("¿Realmente deseas cerrar Recepción de Materia Prima?", "Sistema de .....", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2) = Windows.Forms.DialogResult.Yes Then e.Cancel = False Else e.Cancel = True End If End Sub
Gracias por la ayuda! :)
Cajami:
Hola, para todo caso, puedes hacer lo siguiente:
en la pregunta IF en vez de que sea asi:
--- Código: Text ---If MessageBox.Show("¿Realmente deseas cerrar Recepción de Materia Prima?", "Sistema de .....", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2) = Windows.Forms.DialogResult.Yes Then
pon asi (que la respuesta de No):
--- Código: Text ---If MessageBox.Show("¿Realmente deseas cerrar Recepción de Materia Prima?", "Sistema de .....", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2) = Windows.Forms.DialogResult.No Then
si es No entonces pones e.Cancel = True y no se va a poder salir, si la respuesta fuera si nu se hace naa y se cierra, nos vemos :hola:
Navegación
Ir a la versión completa