Hallo Community,
bin gerade am wieder erlernen von VB
Hatte mich schon vor einiger Zeit mal damit beschäftigt, konnte dies jedoch nie so richtig intensivieren.
Ich möchte gerne eine gefüllte Listbox in ein Array einlesen. Die Listbox kann der Benutzer mit so vielen Einträgen füllen wie er mag. Aus diesem Grund besitzt das Array auch keine feste Größe. Ich habe nun bereits den Code geschrieben, jedoch gibt es hier leider noch ein Problem.
Das Problem liegt bei dem einlesen der Listboxeinträge.
Wir nehmen an, das wir in die Listbox drei Einträge gespeichert haben. 1, 2 und 3. Diese Zahlen stehen nun als Item in der Listbox.
Somit muss das Array die Größe zwei haben? Da das Array ja mit Null beginnt und somit nun genau drei Speicherfelder hat.
Leider durchläuft das Programm die For schleife nur zweimal, somit fehlt der letzte Eintrag. Ich kann mir das nicht erklären. Ist irgendwo ein Fehler drin?
das lbl_ausgabe dient mir nur zur Hilfe und hat überhaupt keine Auswirkungen auf das Programm.
Könnt Ihr mir evtl. helfen?
bin gerade am wieder erlernen von VB
![:)](https://www.vb-paradise.de/wcf/images/smilies/smile.png)
Ich möchte gerne eine gefüllte Listbox in ein Array einlesen. Die Listbox kann der Benutzer mit so vielen Einträgen füllen wie er mag. Aus diesem Grund besitzt das Array auch keine feste Größe. Ich habe nun bereits den Code geschrieben, jedoch gibt es hier leider noch ein Problem.
VB.NET-Quellcode
- Option StrictOnPublic Class Form1
- Dim arraygröße As Integer
- Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_speichern.Click
- ListBox1.Items.Add(txt_eingabe.Text)txt_eingabe.Text = "" End Sub
- Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_auslesen.Click
- arraygröße = ListBox1.Items.Count - 1lbl_ausgabe.Text = Convert.ToString(arraygröße)
- Dim inhalt(arraygröße) As String
- For i = 0 To arraygrößeinhalt(i) = Convert.ToString(ListBox1.Items.Item(i))i = i + 1
- Next
- End Sub
- Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Loadlbl_ausgabe.Text = ""End SubEnd Class
Das Problem liegt bei dem einlesen der Listboxeinträge.
Wir nehmen an, das wir in die Listbox drei Einträge gespeichert haben. 1, 2 und 3. Diese Zahlen stehen nun als Item in der Listbox.
Somit muss das Array die Größe zwei haben? Da das Array ja mit Null beginnt und somit nun genau drei Speicherfelder hat.
Leider durchläuft das Programm die For schleife nur zweimal, somit fehlt der letzte Eintrag. Ich kann mir das nicht erklären. Ist irgendwo ein Fehler drin?
das lbl_ausgabe dient mir nur zur Hilfe und hat überhaupt keine Auswirkungen auf das Programm.
Könnt Ihr mir evtl. helfen?