none
Wie Panels füllen RRS feed

  • Frage

  • Hallo,

    auf einem Formular befinden sich 2 Panels.

    Diese möchte ich mit mehreren Buttons variabel "füllen" - Größe und Position sind unterschiedlich.

    Fülle ich das erste Panel mit Panel.add funktionert das, sobald ich das zweite Panel füllen will
    stellt er nur noch Blödsinn in beiden Panels dar (bzw. im 1. Panel überhaupt nicht mehr).
    Kommentiere ich das Befüllen des 1. Panels aus, füllt er das 2. Panel wieder so wie es soll.

    Was mache ich da falsch?

    Anbei der Quellcode:


    Dim j As Integer = 0
            For i = 0 To MeinSpiel.MeineSpielsteine.AnzahlSteine.Count - 1
                Dim Steinchen As Spielstein = MeinSpiel.MeineSpielsteine.AnzahlSteine(i)
                ' Position fuer jeden Spielstein bestimmen.
                Steinchen.Top = PanelSpieler1.Height - Steinchen.Height - (j * 25)
                ' Groesse fuer jeden Spielstein bestimmen.
                Steinchen.Width -= j * 17
                Steinchen.Visible = True
                Steinchen.BackColor = Color.Blue
                PanelSpieler1.Controls.Add(Steinchen)
                j += 1
            Next



            Dim k As Integer = 0
            For i = 0 To MeinSpiel.MeineSpielsteine.AnzahlSteine.Count - 1
                Dim Steinchen As Spielstein = MeinSpiel.MeineSpielsteine.AnzahlSteine(i)
                ' Position fuer jeden Spielstein bestimmen.
                Steinchen.Top = PanelSpieler2.Height - Steinchen.Height - (k * 35)
                ' Groesse fuer jeden Spielstein bestimmen.
                Steinchen.Width -= k * 17
                Steinchen.Visible = True
                Steinchen.BackColor = Color.Blue
                PanelSpieler2.Controls.Add(Steinchen)
                k += 1
            Next

    Eddy
    Mittwoch, 24. Februar 2010 19:56

Antworten

  • Hallo Eddy,

    wenn ich Deinen Code oben richtig interpretiere,
    so verwendest Du die "Steinchen" für das erste wie das zweite Panel.

    Nur kann ein Steuerlement (aka Steinchen) nur in einer Controls-Auflistung
    enthalten sein  und immer nur einen Besitzer (Parent ) haben.

    Du mußt also für jedes Panel einen eigenen Steinchen-Vorrat
    (sprich Steuerelemente/Button) vorrätig halten bzw. jeweils erzeugen.

    Gruß Elmar
    • Als Antwort markiert Eddy_2010 Mittwoch, 24. Februar 2010 21:50
    Mittwoch, 24. Februar 2010 20:26
    Beantworter

Alle Antworten

  • Hallo Eddy,

    wenn ich Deinen Code oben richtig interpretiere,
    so verwendest Du die "Steinchen" für das erste wie das zweite Panel.

    Nur kann ein Steuerlement (aka Steinchen) nur in einer Controls-Auflistung
    enthalten sein  und immer nur einen Besitzer (Parent ) haben.

    Du mußt also für jedes Panel einen eigenen Steinchen-Vorrat
    (sprich Steuerelemente/Button) vorrätig halten bzw. jeweils erzeugen.

    Gruß Elmar
    • Als Antwort markiert Eddy_2010 Mittwoch, 24. Februar 2010 21:50
    Mittwoch, 24. Februar 2010 20:26
    Beantworter
  • Hallo Eddy,

    wenn ich Deinen Code oben richtig interpretiere,
    so verwendest Du die "Steinchen" für das erste wie das zweite Panel.

    Nur kann ein Steuerlement (aka Steinchen) nur in einer Controls-Auflistung
    enthalten sein  und immer nur einen Besitzer (Parent ) haben.

    Du mußt also für jedes Panel einen eigenen Steinchen-Vorrat
    (sprich Steuerelemente/Button) vorrätig halten bzw. jeweils erzeugen.

    Gruß Elmar

    Hallo Elmar,

    ja super!
    Genau das war der entscheidende Hinweis. Jetzt klappt's.

    Vielen Dank,

    Eddy
    Mittwoch, 24. Februar 2010 21:40