wenn form schließt dann messagebox.show

  • VB.NET

Es gibt 18 Antworten in diesem Thema. Der letzte Beitrag () ist von Dev.

    wenn form schließt dann messagebox.show

    hallo,
    wie kann ich das machen, wenn bevor man das fenster bzw die form schließt soll eine messagebox kommen, wo drin steht also als auswahl... ja nein und abbrechen ... den text schreibe ich dann noch dazu selber ... wenn man dann auf ja klickt soll das und das passieren auf nein das und auf abbrechen aoll die massageboc geschlossen werden
    wie mache ich das ?

    lg rene
    Das hier sollte dir auf die Sprünge helfen:

    [VB.NET] Das Schließen einer Form verhindern
    [VB.NET] Schließen-Ereigniss
    „Was daraus gefolgert werden kann ist, dass jeder intelligentere User sein Geld lieber für Bier ausgibt, um einen schönen Rausch zu haben, und nicht dieses Ranzprodukt.“

    -Auszug aus einer Unterhaltung über das iPhone und dessen Vermarktung.
    Mit welcher Hardware wird die Massage denn durchgeführt? Eine solche Box habe ich noch nie gesehen :D

    Pseudo:

    VB.NET-Quellcode

    1. ... Handles Foo.FormClosing
    2. Dim dr as dialogresult = MessageBox.Show("---", "..." MessageBoxButtons.YesNoCancel)
    3. Select Case dr
    4. Case DialogResult.Yes
    5. e.Cancel = True
    6. 'blabla
    7. 'und so weiter...

    Skybird schrieb:

    Das sind ja Ubisoftmethoden hier !

    -- Vollzitat entfernt --
    mit word z.b. ich möchte da genau so haben also einmal speichern dann nicht speichern und eben abbrechen kann mna das machen wenn wie ?

    wäre nett danke schonmal dafür ;)

    Edit by der_Kurt: Bitte kein Vollzitat, wenn der Beitrag direkt darüber steht.

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „der_Kurt“ ()

    @renni96:
    Funktionsfähigen Quellcode gibt's überall im Netz, z.B. bei den Links von Lukas weiter oben.
    Wenn du dir den Pseudo-Code con vb-checker etwas zu Herzen nimmst: Wenn bei der Messagebox "Ja" geklickt wird, wird das Beenden abgebrochen.
    Ansonsten könntest du deine Speicher-Funktion ausführen.

    Is eigentlich alles schon da.

    renni96 schrieb:

    kann das nicht kann mir jemand mal ein quellcode geben ?

    Alles was Du brauchst, steht in diesem Thread.
    Also:
    Lies ihn aufmerksam durch und generiere Dir den benötigten Code selbst. :thumbsup:
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    Das macht die Entwicklungsumgebung für Dich.
    Öffne die Form in der Entwurfsansicht.
    Klick auf Eigenschaften und dann oben auf den Blitz. Such das richtige Evebt aus und mach einen Doppelklick drauf.
    Fertich. :thumbsup:
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    also mit dem Event (auch mit formclosing) hat bei mir grad nich funktioniert...
    Aber du könntest einen eigenen Schließen Button nehmen und dann das:

    VB.NET-Quellcode

    1. Dim result As MsgBoxResult = MsgBox("schließen?", MsgBoxStyle.YesNo)
    2. If result = MsgBoxResult.Yes Then
    3. Me.Close()
    4. End If
    Nimm keine zweite Form, das ist viel zu umständlich.

    Wenn ich dich richtig verstanden habe, sollte folgender Code funktionieren.

    VB.NET-Quellcode

    1. Private Sub Form1_FormClosing(sender As Object, e As FormClosingEventArgs) Handles Me.FormClosing
    2. Dim x = MsgBox("Vor dem schließen speichern?", MsgBoxStyle.YesNoCancel)
    3. Select Case x
    4. Case MsgBoxResult.Yes
    5. MsgBox("Speichern")
    6. 'Noch schnell speichern
    7. Case MsgBoxResult.No
    8. 'Nichts, da es ja eh geschlossen wird xD
    9. Case MsgBoxResult.Cancel
    10. e.Cancel = True
    11. End Select
    12. End Sub



    P.s.: Mit etwas lesen und denken und anschauen des "FormClosingEventArgs" beim schließen der Form, hättest du das auch hinbekommen.

    hab vl. lösung

    Hallo,

    Verstehe dein Problem. Hab evtl. ne lösung

    VB.NET-Quellcode

    1. Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    2. Me.Visible = False
    3. MessageBox.Show("Tschüß!")
    4. Me.Close()
    5. End Sub


    Dabei wird das programm unsichtbar, die msgbox zeigt sich und dann schließt alles. Sieht so aus als ob sich form schließt und msgbox kommt.
    vielleicht ist Dir das eine hilfe! :thumbsup:
    dafuq was ein crap..

    wenn dann

    VB.NET-Quellcode

    1. Private Sub Form1_FormClosing(ByVal sender As System.Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles MyBase.FormClosing
    2. If Not MessageBox.Show("Wollen sie wirklich beenden", "Beenden", MessageBoxButtons.YesNo, MessageBoxIcon.Information) = DialogResult.Yes Then
    3. e.Cancel = True
    4. End If
    5. End Sub