Einlesen von stringarray in ComboBox



  • hallo

    ich möchte ein von mir erstelltes String-Array in eine Combobox einlesen. Wie kann ich dasselbe in die dafür erforderlichen TStrings konvertieren?

    es geht also um die Konvertierung von string * zu TString *.
    da leider der stern bei google als platzhalter verwendet wird, fand ich bisher immer nur lösungen für die konvertierung von string zu TString 😞

    Noch mein Code, der nicht funktioniert:

    time_t t = time(0);
    	struct tm* ptm = localtime (&t);
    	string stringYears[7];
    	int k = 0;
    	for (int i = ptm->tm_year-3;i < ptm->tm_year+4 ;i++) {
    		stringYears[k] = i;
    		k++;
    	}
    	ComboBox2->Items = stringYears;
    

    grüße^^



  • Hallo

    Wozu überhaupt das String-Array? Arbeite direkt mit den Items der ComboBox

    time_t t = time(0);
        struct tm* ptm = localtime (&t);
        ComboBox2->Items->Clear();
        int k = 0;
        for (int i = ptm->tm_year-3;i < ptm->tm_year+4 ;i++) {
            ComboBox2->Items->Add(IntToStr(i));
            k++;
        }
    

    Ansonsten must du eben noch eine weitere Schleife bauen die mittels .c_str() alle Elemente des string-Arrays als AnsiString in die Items einfügt.

    bis bald
    akari



  • vielen dank 🙂

    hat auch gleich noch ne andre frage erspart 😉

    hab grad sowas wie StrToInt() und IntToStr() gesucht 🙂



  • Ich hab dazu mal eine Frage:

    akari und einige andere verwenden meist IntToStr(int Zahl), ich hingegen verwende meist den überladenen AnsiString-Konstruktor, also AnsiString(int Zahl).
    Hat die Verwendung von IntToStr() irgendwelche Vorteile, die mir bisher entgangen sind?

    Grüße Joe_M.



  • Hallo

    Hat bestimmt keine Vor- oder Nachteile, da beide letztendlich das gleiche ausführen. Ist eben nur eine Frage der Gewöhnung.

    /Edit : das einzigste was mir an IntToStr/StrToInt besser gefällt ist das es diese Funktion als ergänzendes Paar gibt, aber zum AnsiString-Konstruktor keinen passenden int-Konstruktor. Es ist also leichter zu merken, insbesondere da es ja noch weitere *To*-Funktionen gibt.

    bis bald
    akari


Anmelden zum Antworten