Problem beim Auslesen eines ListBox Feldes



  • Hi!

    Ich hab ein kleines Pobelm und wäre froh wenn mir jemand helfen könnte.
    Und zwar versuche ich aus einem LisBox Feld jeweils den ersten, sowie den zweiten String hreauszulesen.
    Mit
    ListBox1->Items->GetText();
    ist das kein problem, allerding erhalte ich den gesamten Text des ListBox Feldes. Wie kann ich dies nun beschränken?
    Ich bin noch nicht sehr bewandert in C++ und hoffe mir kann jemand helfen.

    Mit freundlichen grüßen
    Juup



  • Hi,
    da ich auch nur ein Anfänger bin, habe ich nur diese Lösung für dich.
    Der folgende Code list die ersten 3 Einträge aus der ListBox und schreit sie
    in eine Memo.

    int i=0;
    int j=3;
    for (i+1;i<j;i++)
            {
            ListBox1->ItemIndex=i;
            Memo1->Lines->Add(ListBox1->Items->Strings[ListBox1->ItemIndex]);
            }
    

    ich hoffe ich konnte helfen. 🙂
    mfG Tim



  • Die Konstruktion von Tim ist zwar reichlich abenteuerlich ;), den entscheidenden Hinweis hat er aber gegeben: über TListBox::Items::Strings[n] kannst du auf die einzelnen Zeilen zugreifen.



  • Hi Jansen,
    wenn mein Beitrag abenteuerlich ist, würde ich mal wissen wie es einfacher
    geht. Da mir einfach michts anderes einfällt. Naja ich bin ja auch nur
    Anfänger 🙂 .
    Als wenn es einfacher geht schreibe mal, würde mich mal interessieren.
    mfG Tim



  • for (int j = 0; j < ListBox1->Items->Count; j++) 
      Memo1->Lines->Add(ListBox1->Items->Strings[j]);
    


  • das ist doch irgendwie das gleiche wie ich geschreiben habe. Ich weiß das ich mir die Zeile "ListBox1->ItemIndex=i;" hätte schenken können wenn ich
    in der Zeile (Memo1->Lines->Add(ListBox1->Items->Strings[ListBox1-

    ItemIndex]);) hinter ItemIndex noch [i] eingefügt hätte.
    Achso das was du geschrieben hast geht auch einfacher, da du ja alle Einträge
    ausliest, hättest du auch folgendes schreiben können: Memo1->Text=ListBox1-
    Items->Text;.
    na dann
    mfG Tim



  • Nana, nun mal nicht klugscheissen! 😉

    Dass man statt i < Items->Count halt i < 2 schreibt, wenn man nur die ersten beiden Zeilen lesen möchte, das sollte ja wohl offensichtlich sein.


Anmelden zum Antworten