Form & Variable.show()

  • VB.NET

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

    Form & Variable.show()

    Sorry, ich hatte leider keine Ahnung was ich dafür als Überschrift eingeben kann :S

    Jedenfalls würde ich gerne wissen ob man bei einem Code, z.B. Form1.Show()
    die Zahl durch eine Variable ersetzen kann, damit es danch ca. so aussieht: "Form" danach irgendwie die Variable einbinden, die angeben soll welche Form gezeigt werden soll und dann eben noch das ".Show"

    Hab da noch nichts gefunden, ob und wie das funktionieren könnte.

    Hoffe ihr könnt mir helfen

    MfG Safloc08
    Bei einem Control namens Form1 würde man das mit

    VB.NET-Quellcode

    1. Me.Controls("Form" & Var).Show
    machen, aber das geht glaub ich nicht für Forms.
    Wofür brauchst du das überhaupt?

    Du könntest versuchen, am Anfang alle Formen in eine Liste zu packen und dann mit Formen(i).Show, kommt drauf an.
    Ja, leider funktioniert es nicht.
    Brauchen würde ich es aus folgendem Grund:

    Hab mir da so ein Programm gemacht, mit dem ich aus verschiedenen Tabs, in denen sich jeweils 1 Panel befindet, das jeweilige Panel "Drucken" möchte. Jedoch weiss ich nicht wie ich bestimmen soll, dass das Panel, das sich im aktuell ausgewählten Tab befindet, gedruckt werden soll.
    Ihr könnt auch andere Vorschläge machen wie man das schaffen kann, doch die ist die einzige die mir eingefallen ist :(

    MfG Safloc08
    In Deiner Print-Methode (über ContextMenü oder wie auch immer aufgerufen) kannst Du rausfinden welches Tab gerade selected ist und dessen Controls nach dem Panel durchsuchen:

    VB.NET-Quellcode

    1. For Each c As Control In TabControl1.SelectedTab.Controls
    2. If c.GetType.Name = "Panel" Then
    3. Dim p As Panel = CType(c, Panel)
    4. Debug.Print(p.Name)
    5. Return p
    6. End If
    7. Next

    Sollte klappen, aber vielleicht hat jemand eine bessere Idee ....