Dynamische GUI

Speedkill

Erfahrenes Mitglied
Hallo

ich möchte eine Dynamische GUI aufbauen.

Sprich ich habe ein Array mit Strings und für jeden String soll ein z.B. Textfeld erzeugt werden.

Wie gehe ich da am besten vor ?
Ich habe noch nichtmal ne Ahnung wo ich Anfangen könnte (tja das ist halt der Nachteil wenn man sich alles zusammenklicken kann und nix an GUI Elementen programmieren muss ;) )

Grüße
Speedy
 
So erstellst du z.B. ein Array von Textfeldern.
Code:
Dim arrTxt(9) As Textbox
Dim posX, posY As Integer

For i As Integer = 0 To 9

 arrTxt(i) = New Textbox
 
 With arrTxt(i)
   .Location = New System.Drawing.Point(posX, posY) 'Positionieren der Textbox
   .Parent = Me 'oberer Container = Formular
   .Visible = True 'Sichtbar machen
 End With

Next i
posX und posY musst du natürlich noch in der Schleife hochzählen, wiel sonst alle Textfelder übereinander sind.
Für die Anzahl der Textfelder, also die größe des Arrays nimmst du dann bei dir einfach die Anzahl der Strings.
 
Zuletzt bearbeitet:
Ganz wichtig ist das jedes Control Elements an die Auflistung Controls angefügt wird, damit sie sich auch darstellen.

Wenn Du die Controls direkt in das Formular einfügen willst, solltest du vorher Me.SuspendLayout und am Ende Me.ResumeLayout(false) aufrufen.
Das bewirkt, das sich das Formular nicht neu zeichnet solange du es aufbaust.
 
Zurück