desaster0505
Erfahrenes Mitglied
Hallo,
ich habe ein Problem bei dem ich irgendwie nicht auf einen grünen Zweig komme:
Ich möchte eine Eingabemaske dynamisch erstellen in der zuerst eine Combobox, dann z.B. zwei Textfelder und dann wieder eine Combobox auftauchen.
Zwar habe ich schon Funktionen geschrieben mit denen man entweder Textboxen oder Comboboxen dynamisch erstellen und auch den Inhalt dynamisch aufbauenkann, aber ich weiss nicht wie ich das so abwechselnd hinbekomme.
Hinzukommt, dass ich auf die einzelnen Elemente per Index zugreifen will. Auch das habe ich bereits mit meinen Funktionen hinbekommen, aber wie gesagt, an der Kombination von verschiedenen Feldern weiss ich Moment nicht weiter.
Das ganze muss dann auch noch für mehrere Zeilen möglich sein (aber dann nur noch genau der gleiche Aufbau wie in der ersten Zeile z.B. text, combo, combo, text).
Anbei mal der Code für eine dynamisch Textfeld-Erstellung (Combobox-Funktion ist ähnlich), damit ihr seht was ich bisher habe
Der Code um die Funktion aufzurufen:
Sowas ähnliches will ich haben, nur das man Text-Felder und Comboboxen kombinieren kann.
Habe daran gedacht zuerst die Funktion für Combo-Boxen aufzurufen, dann die der Text-felder, aber dann habe ich ja trotzdem keine gemeinsamen Arrays über die ich auf die einzelnen Elemente zugreifen kann.
In VB 6 war das alles nicht nötig, da man den Elementen Indize zuweisen konnte um dann auf die jeweiligen Eigenschaften und Methoden des Elements zuzugreifen.
Für Hilfe, Ansätze wäre ich sehr dankbar.
ich habe ein Problem bei dem ich irgendwie nicht auf einen grünen Zweig komme:
Ich möchte eine Eingabemaske dynamisch erstellen in der zuerst eine Combobox, dann z.B. zwei Textfelder und dann wieder eine Combobox auftauchen.
Zwar habe ich schon Funktionen geschrieben mit denen man entweder Textboxen oder Comboboxen dynamisch erstellen und auch den Inhalt dynamisch aufbauenkann, aber ich weiss nicht wie ich das so abwechselnd hinbekomme.
Hinzukommt, dass ich auf die einzelnen Elemente per Index zugreifen will. Auch das habe ich bereits mit meinen Funktionen hinbekommen, aber wie gesagt, an der Kombination von verschiedenen Feldern weiss ich Moment nicht weiter.
Das ganze muss dann auch noch für mehrere Zeilen möglich sein (aber dann nur noch genau der gleiche Aufbau wie in der ersten Zeile z.B. text, combo, combo, text).
Anbei mal der Code für eine dynamisch Textfeld-Erstellung (Combobox-Funktion ist ähnlich), damit ihr seht was ich bisher habe
Visual Basic:
Public Function Control_text_box(ByVal max As Integer, ByRef Items() As String, ByRef loc_values As Text_box_Values, ByVal Formname As Object)
Dim textArray(max - 1) As TextBox
For i As Integer = 0 To UBound(textArray)
textArray(i) = New TextBox
With textArray(i)
.Left = loc_values.left + loc_values.distance * i
.Top = loc_values.top ' ich habe dafür ein Struct geschrieben wo ich die Standwerte einstelle und dann an die Funktion übergebe, code aber nicht mitgepostet.
.Width = loc_values.witdh
.Text = Items(i)
.Height = 33
End With
Formname.Controls.Add(textArray(i)) ' Text-Feld hinzufügen
Next i
Return textArray
End Function
Der Code um die Funktion aufzurufen:
Visual Basic:
Dim ArrText_box() As TextBox
Dim txtbox_Text As String() = New String() {"Höhe", "Breite"} 'Vorgeschriebener Text
ArrText_box = Control_text_box(2, txtbox_Text, Text_Werte, Me)
'Control_text_box(anzahl der Felder, Vorgeschriebener Text, Textfeld-Werte z.B. Höhe, Me)
Sowas ähnliches will ich haben, nur das man Text-Felder und Comboboxen kombinieren kann.
Habe daran gedacht zuerst die Funktion für Combo-Boxen aufzurufen, dann die der Text-felder, aber dann habe ich ja trotzdem keine gemeinsamen Arrays über die ich auf die einzelnen Elemente zugreifen kann.
In VB 6 war das alles nicht nötig, da man den Elementen Indize zuweisen konnte um dann auf die jeweiligen Eigenschaften und Methoden des Elements zuzugreifen.
Für Hilfe, Ansätze wäre ich sehr dankbar.
Zuletzt bearbeitet: