FileListBox Items
-
Tagchen,
*frohes Neues*
Ich habe ein Problem mit einer FileListBox. Und zwar brauch ich eine Abfrage, ob es zB den Eintrag 'FileListBox->Items->Strings[2]' gibt. Also ob in der Liste mindestens 3 Einträge vorhanden sind.
Ich habs damit probiert:
Code:if(FileListBox->Items->Strings[2] != "") ...bzw. mit:
if(FileListBox->Items->Strings[2] != NULL) ...Beide Abfragen sind von der Syntax her richtig, es gibt auch keinen Fehler...nur passieren tut auch nichts...
Kann mir dabei jemand helfen?greetz KN4CK3R
-
Warum nicht so? Mindestens 3 Einträge:
if ( FileListBox1->Items->Count >= 3) { //... }
-
weil ich dann
if ( FileListBox1->Items->Count == 1) { //... } if ( FileListBox1->Items->Count == 2) { //... } if ( FileListBox1->Items->Count == 3) { //... } ...schreiben müsste...
-
Mit switch/case würde das etwas übersichtlicher, aber es drängt sich der Eindruk auf, dass dein ganzer Ansatz eher unpraktisch ist.
Was genau soll denn in Abhängigkeit der Itemanzahl passieren?
-
also:
in der FileListBox stehen Lied-Dateinamen. Die einzelnen Namen werden später in einen Text eingefügt. Es können maximal 9 Lieder in der Liste stehen. Wenn jetzt ein Button gedrückt wird, wird erst einmal eine Zeile in einem RichEditFeld geschrieben. In die nächste Zeile dann Text plus den Liednamen. Als Schleife kann ich das nicht machen, da der Text immer anders ist. Wenn nur 2 Einträge in der Liste sind, soll aber trotzdem für alle 9 Einträge der Text geschrieben werden, nur soll der Teil, an dem der Name stehen würde freigelassen werden.
Dann dacht ich mir, dass ich mit if überprüfe ob es zB den Eintrag Nummer 3 gibt. Wenn ja, soll der Text mit Name geschrieben werden, wenn nein, dann nur der Text...Ich hoffe mal, das war verständlich.
greetz KN4CK3R
-
Also, du willst abfragen ob ein bestimmer Eintrag existiert.
Und wenn er existiert willst du in einen Textblock eine bestimmte Zeile dazuschreiben, andernfalls nur eine Leerstelle?
-
kurz und bündig
ja
-
Und welchen Sinn hat das Programm als ganzes?
-
begnüg dich einfach mit meinem Post von oben. Mehr Infos sind für das Problem nich von Nöten.
-
{ //Text ins Rich-Edit schreiben if (FileListBox1->Items->Count == 1) //Spezielle Zeile; else //Leere Zeile; //Mehr Text //2. Text ins Rich-Edit schreiben if (FileListBox1->Items->Count == 2) //Spezielle Zeile; else //Leere Zeile; //Noch mehr Text //ect...... }So, keine besseren Infos, keine bessere Lösung.
-
Empfehlenswerter wäre eine StringGrid Kompnonete, weil da kann man in Schleifen auf
die Zellen zugreifen.
Ausserdem könntest du dann deine "Playlists" auch direkt speichern...