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