2 Formulare Öffnen

  • VB.NET

Es gibt 5 Antworten in diesem Thema. Der letzte Beitrag () ist von VaporiZed.

    2 Formulare Öffnen

    Ich habe in Visual Basic.net ein Formular erstellt und viele Buttons auf diesen Formular.
    Jetzt ist etwas unübersichtlicher so dass, ich ein neues Formular hinzugefügt habe und viele Buttons von der ersten
    Formular auf das zweite kopiert.
    Ich habe jeweils auf 2 Buttons ( der Eine auf dem Formular 1 , wenn ich daraf klicke, soll er das Formular 2 öffnen und der andere Button
    auf dem Formular 2, wenn ich darauf klicke, muss er das erste Formular öffnen).
    Ich habe es kompiliert aber das zweite Formular wird leer angezeigt, wenn ich auf dem button des ersten Formular klicke. Es zeigt mir ein leeres Fenster.

    Hat jemand schon Erfahrung damit ?? oder eine Idee, wie dies gemacht werden soll ??
    Zeig mal bitte die Codezeilen, in denen bei Form1 Form2 aufgerufen wird und umgekehrt.
    Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von „VaporiZed“, mal wieder aus Grammatikgründen.

    Aufgrund spontaner Selbsteintrübung sind all meine Glaskugeln beim Hersteller. Lasst mich daher bitte nicht den Spekulatiusbackmodus wechseln.
    @lieuthnant Nimm nur eine Form und zieh Dir da drauf ein TabControl.
    Da kannst Du dann Deine Controls besser gruppieren.
    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!
    Private Sub Umschalten_A_nach_B_Click(sender As System.Object, e As System.EventArgs) Handles UmschaltenPCToBeckhoff.Click, UmschaltenPCToBeckhoff.Click

    Dim Form2 As New Form()

    'Form1.ActiveForm.Hide()

    Form2.ShowDialog()

    End Sub

    ___________________________________________________________________________

    in B:

    Private Sub Umschalten_B_nach_A_Click(sender As System.Object, e As System.EventArgs) Handles UmschaltenPCToBeckhoff.Click, UmschaltenPCToBeckhoff.Click

    Dim Form1 As New Form()

    'Form2.ActiveForm.Hide()

    Form1.ShowDialog()

    End Sub
    @lieuthnant Grützgrottenoberschlecht und suboptimal. ;(
    Lerne zunächst den Umgang mit Instanzen von Formen, gugst Du hier.
    Und dann siehst Du Dir das TabControl an.
    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!
    Öhm. Seh ich das richtig, dass Du aus Form1 eine Form2-Instanz erzeugst und diese aufrufst und danach aus der neu erschaffenen Form2-Instanz wiederum eine neue Form1-Instanz erzeugst und diese dann aufrufst? Merkst was? Schließe stattdessen, wenn Du mit Form2 fertig bist, diese mit DialogResult = DialogResult.OK und schreibe stattdessen bei Form1 (bitte nutze auch Du CodeTags):

    VB.NET-Quellcode

    1. Dim Form2 As New Form()
    2. Me.Hide()
    3. Form2.ShowDialog()
    4. Me.Show()

    oder ggf. besser einfach nur

    VB.NET-Quellcode

    1. Dim Form2 As New Form()
    2. Form2.ShowDialog(Me)

    Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von „VaporiZed“, mal wieder aus Grammatikgründen.

    Aufgrund spontaner Selbsteintrübung sind all meine Glaskugeln beim Hersteller. Lasst mich daher bitte nicht den Spekulatiusbackmodus wechseln.