Fenster öffnet sich trotzdem

  • Allgemein

Es gibt 6 Antworten in diesem Thema. Der letzte Beitrag () ist von ErfinderDesRades.

    Fenster öffnet sich trotzdem

    Hallo Community,
    Ich habe ein etwas größeres Programm geschrieben wo ich 3 Programme habe die mit einem Login versehen sind.
    Nun habe ich das Problem, das wenn ich die Loginform schliese, das dann torztdem die Hauptform geöffnet wird.

    Beispiel:
    A = Login
    B = Hauptform

    Programm öffnet sich ---> A wird angezeigt und B bleibt verstecket, beide Formen werden in der Taskleiste angezeigt.
    Wenn ich jetzt in der Taskleiste A mittels rechtsklick --> Schließen zu mache wird B dennoch geöffnet.

    Wie kann ich das machen das es nicht passiert sondern das wenn ich A schließe B auch geschlossen wird.

    VB.NET-Quellcode

    1. Private Sub A_Close(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Close
    2. B.close 'Wenn nur die Form geschlossen werden soll
    3. End 'Wenn die komplette Anwendung beendet werden soll
    4. End Sub



    Ich würde dir aber empfehlen, das so zu machen, das wenn das Login erfolgreich war das dann B angezeigt wird. Und nicht schon vorher.

    B kannst du dann anzeigen lassen wenn das Login gültig ist.

    VB.NET-Quellcode

    1. If Login = True then
    2. B.show 'Das Login ist erfolgreich, die Form B wird angezeigt
    3. A.Close 'A Wird geschlossen
    4. else 'Das Login war nicht erfolgreich
    5. end 'Die anwendung wird beendet
    6. end if
    Login und Hauptform wird auch angezeigt so wie ich es will.
    Login wird geladen Hauptform bleibt aber unsichtbar.
    Wenn ich Login per Taskleiste schließe wird Hauptform totzdem geöffnet

    Ich habe es gerade ausprobiert.
    Wenn ich in der Loginform (Form_Load) reinschreibe

    VB.NET-Quellcode

    1. If DialogResult.Cancel Then
    2. Form1.Close

    und ich das dann Debuge schmiert das Login ab.

    Das Login etc öffnet sich ohne das die Hauptform auch nur zur ansicht kommt. Das Problem ist, das wenn jemand die Loginform über die Taskleiste Schließen tut dann geht die Form1 auf.

    Auf Form1 wird das ganze Programm abgearbeitet sorich da wird drüber geschrieben etcpp


    P.S.
    Bevor wieder jemand ankommt und sagt ich solle Option Strict on machen, ich habe Option Strict on (Standard Einstellung). Wollte ich nur mal so dahin gesagt haben

    sry - ich ging davon aus, du kenntest die .ShowDialog-Methode, und dass sie ein DialogResult zurückgibt.

    guck dir PasswordHandling an, oder Eingabe-Form.

    In den Samples ist sogar ziemlich professionell einfach im Form-Designer das DialogResult des Ok - / Cancel - Buttons eingestellt, sodass nichtmal ein Click-Event behandelt wern muß.