Test Foro de elhacker.net SMF 2.1

Programación => .NET (C#, VB.NET, ASP) => Programación General => Programación Visual Basic => Mensaje iniciado por: lord_Sirikon en 20 Diciembre 2010, 20:20 PM

Título: Parar cierre de aplicación en VB
Publicado por: lord_Sirikon en 20 Diciembre 2010, 20:20 PM
Hola a todos tengo una duda:

Veréis estoy haciendo un editor de textos y quiero hacer que cuando le de a cerrar, antes me diga "¿Seguro que quieres cerrar sin guardar?", Si le doy a Aceptar se me salga de la aplicacion y si le doy a cancelar que no se cierre.

Ya lo tengo casi todo, solo necesito un comando para que anule el cierre de la aplicación y no haga nada.

Os pongo el código del "Antes de cerrar" tal cual lo tengo ahora.
Código (vb) [Seleccionar]
Private Sub Form1_Close(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.FormClosing
       If saved = True Then
           End
       Else
           If MsgBox("¿Seguro que quiere salir sin guardar?", 1) = 1 Then
               End
           Else
               'no cerrar aplicacion
           End If
       End If

   End Sub


Salu2 y gracias de antemano!
Título: Re: Parar cierre de aplicación en VB
Publicado por: TGa. en 20 Diciembre 2010, 20:45 PM
No tenes que colocar nada solo quedaria asi
Código (vb) [Seleccionar]
If MsgBox("Seguro que quiere salir sin guardar?", 1) = 1 Then
End

en else no tenes que colocar nada
Título: Re: Parar cierre de aplicación en VB
Publicado por: Psyke1 en 20 Diciembre 2010, 21:07 PM
Cita de: gaston93 en 20 Diciembre 2010, 20:45 PM
No tenes que colocar nada solo quedaria asi
Código (vb) [Seleccionar]
If MsgBox("Seguro que quiere salir sin guardar?", 1) = 1 Then
End

en else no tenes que colocar nada

Código (vb) [Seleccionar]
If MsgBox("Seguro que quiere salir sin guardar?", 1) = 1 Then End

DoEvents! :P
Título: Re: Parar cierre de aplicación en VB
Publicado por: Elemental Code en 20 Diciembre 2010, 21:30 PM
el problema es que el evento tuyo esta en el form close
osea ya es inevitable.

coloca ese codigo en el boton que diga "Cerrar" :P
Título: Re: Parar cierre de aplicación en VB
Publicado por: lord_Sirikon en 20 Diciembre 2010, 21:32 PM
He probado y tampoco funciona.

¿No hay alguna acción que lo que haga sea simplemente anular el cierre o algo así?
Título: Re: Parar cierre de aplicación en VB
Publicado por: lord_Sirikon en 20 Diciembre 2010, 21:34 PM
Cita de: Elemental Code en 20 Diciembre 2010, 21:30 PM
el problema es que el evento tuyo esta en el form close
osea ya es inevitable.

coloca ese codigo en el boton que diga "Cerrar" :P

Ya xD, de ese modo si se, la cosa es colocarlo en la X de cerrar predeterminada de Windows xD
Título: Re: Parar cierre de aplicación en VB
Publicado por: Psyke1 en 20 Diciembre 2010, 21:36 PM
Código (vb) [Seleccionar]
Private Sub Form_Unload(Cancel As Integer)
    If MsgBox("¿Salir?", vbYesNo) = vbNo Then Cancel = True
End Sub

:xD
No lei bien... :silbar:

DoEvents! :P
Título: Re: Parar cierre de aplicación en VB
Publicado por: lord_Sirikon en 20 Diciembre 2010, 21:45 PM
Cita de: Mr. Frog © en 20 Diciembre 2010, 21:36 PM
Código (vb) [Seleccionar]
Private Sub Form_Unload(Cancel As Integer)
    If MsgBox("¿Salir?", vbYesNo) = vbNo Then Cancel = True
End Sub

:xD
No lei bien... :silbar:

DoEvents! :P

Que hago con eso? xDD, lo añado al código o lo sustituyo por el que e puesto yo?
Título: Re: Parar cierre de aplicación en VB
Publicado por: lord_Sirikon en 20 Diciembre 2010, 22:22 PM
Bueno como hiciera lo que hiciera se acababa cerrando lo que he hecho al final es preguntar si guardar antes o no, si le doy a si lo guarda y sale y si le doy a no pues no guarda y sale.

Salu2 a todos y gracias por la ayuda!
Título: Re: Parar cierre de aplicación en VB
Publicado por: TGa. en 20 Diciembre 2010, 23:10 PM
Perdon no habia leido bien, ahora que me fijo mejor esto va en .NET, de todos modos aqui tienes tu respuesta

Código (vbnet) [Seleccionar]
Private Sub Form1_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing
        If saved = True Then
            End
        Else
            If MsgBox(" Seguro que quiere salir sin guardar?", 1) = 1 Then
                End
            Else
                e.Cancel = True
            End If
        End If
    End Sub
Título: Re: Parar cierre de aplicación en VB
Publicado por: Psyke1 en 21 Diciembre 2010, 00:54 AM
@lord_Sirikon
Lee manuales, ni aún dandote la solución sabes resolverlo... :¬¬

DoEvents! :P

Edito:

(http://img34.imageshack.us/img34/4912/fuuuuuuuuuuuuu.jpg)

Esto va en .Net
http://foro.elhacker.net/net-b62.0/
Título: Re: Parar cierre de aplicación en VB
Publicado por: BlackZeroX en 24 Diciembre 2010, 01:01 AM
.
Obviando varias cosas... espero que sea así.

Código (vbnet) [Seleccionar]

Private Sub Form1_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing
    If Not saved Then
        e.Cancel = MessageBox.Show("Seguro que quiere salir sin guardar?", Caption, MessageBoxButtons.YesNo) = System.Windows.Forms.DialogResult.Yes
    End If
end sub


Dulces Lunas!¡.
.
Título: Re: Parar cierre de aplicación en VB
Publicado por: BgCRaCK en 24 Diciembre 2010, 18:33 PM
Cita de: BlackZeroX▓▓▒▒░░ en 24 Diciembre 2010, 01:01 AM
.
Obviando varias cosas... espero que sea así.

Código (vbnet) [Seleccionar]

Private Sub Form1_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing
    If Not saved Then
        e.Cancel = MessageBox.Show("Seguro que quiere salir sin guardar?", Caption, MessageBoxButtons.YesNo) = System.Windows.Forms.DialogResult.Yes
    End If
end sub


Dulces Lunas!¡.
.

Esto si que si : )      Voto este post como la mejor solucion : )

otra cosa que yo diria es :
Código (vbnet) [Seleccionar]

Private Sub Form1_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing

if messagebox.show("Desea cerrar ?","Cerrando Aplicación",MessageBoxButtons.YesNo)=System.Windows.Forms.DialogResult.Yes then
e.cancel
end if