std::string in TStrings* umwandeln



  • ich hab eine kleine Winapi Funktion bei der ich TStrings* brauche:

    ListBox1->Items = DateiName;
    

    [BCC32 Fehler] MusicPlayer.cpp(62): E2034 Konvertierung von 'std::string' nach 'TStrings *' nicht möglich

    ähm ja. wie soll ich das bewerkstelligen. Oder sollte ich mich eher ans VCL forum (C++ Builder) wenden ?



  • Tim06TR schrieb:

    ich hab eine kleine Winapi Funktion bei der ich TStrings* brauche:

    Wohl kaum. TStrings hat genau nichts mit dem Windows-API zu tun.

    Tim06TR schrieb:

    ähm ja. wie soll ich das bewerkstelligen. Oder sollte ich mich eher ans VCL forum (C++ Builder) wenden ?

    Ich empfehle ein paar gute Bücher zu C++ und C++Builder.



  • eine Express antwort, ohne ein buch zu lesen wäre auch gut ^^



  • Du kannst es ja mit .c_str() versuchen.



  • ListBox1->Items = DateiName;

    Wie stellst du dir das vor? Ich rate einfach mal:
    evtl mal geguckt, was passiert, wenn du ein [0] an die richtige stelle packst?
    falls das noch nicht ausreicht, guckst du noch mal theta geschrieben hat - das alleine wird dir allerdings nichts helfen.

    ansonsten kann ich audacia nur recht geben...
    aber nachdenken, was passieren soll, wäre auch schon mal gut...
    ListBox => hat viele Zeilen => Items gibt einen Zeiger auf die erste Zeile wieder
    ich sage dem Compiler jetzt also:


    dest = string_typ;

    macht genau 0 Sinn... genau wie wenn ich dir sage, ersetz mal das Buch aus meinem Bücherregal mit dem, was du in der Hand hast... ich müsste halt noch dazusagen, welches buch

    bb



  • Ein Blick in die BCB-Hilfe zu TStrings hätte da Wunder geholfen. Da findet man z.Bsp. TStrings::Add

    ListBox1->Items->Add(DateiName.c_str());
    


  • Dafür hat man im BCB die Taste F1 belegt. 😉 Die Hilfe ist eigentlich ganz gut und es empfiehlt sich bei Problemen zuerst die Hilfe zu konsultieren. 90% der Probleme werden damit schon gelöst und verringern den Traffic dieses Forums 😉


Anmelden zum Antworten