String, const char * problem
-
zeig doch nochmal den aufruf her und benutze mal bitte cpp codetags (also statt code in die eckigen klammern cpp schreiben), damit wirds übersichtlicher!
-
Form1->text(5).c_str(),...
sollte bei dir gehen
-
String text(int a) { String b; if (FileExists("Daten\\config.ttl")==true) { try{ list = new TStringList; list->LoadFromFile("Daten\\config.ttl"); b=list->Strings[0]; } __finally { delete list; } } if (FileExists("Daten\\"+b+".ttl")==true) { try{ list = new TStringList; list->LoadFromFile("Daten\\"+b+".ttl"); b=list->Strings[a]; } __finally { delete list; } } return b; }geht nicht gibt ja imemr diese fehlermeldungen:
Application->MessageBox(Form1->text(5),Form1->text(6),MB_OK);und dann hatte ich nochmal mit dem probiert:
Application->MessageBox(Form1->text(5).c_str(),Form1->text(6).c_str(),MB_OK);da fallen nun zwar die fehlermeldungen weg. aber der text der bei text(5) zurückgeliefert wird, wird dann nicht richtig umgewandelt sondern staddessen erhalte ich an stelle des textes nur leerzeichen bzw kein text

PS: cpp wirkt sich wohl nur auf den ersten quellcodeblock aus

-
stelle des textes nur leerzeichen bzw kein text
Debugge das durch und du kannst sehen wo der Text verloren geht.
Application->MessageBox(Form1->text(5).c_str(),Form1->text(6).c_str(),MB_OK);
Ist jedenfalls ok.
-
hopatrick schrieb:
PS: cpp wirkt sich wohl nur auf den ersten quellcodeblock aus

nein, aber bei dem satz mit der messagebox sind keine wörter od befehle drin, die ein highlight brauchen...
und ansonsten sieht es richtig aus, kann mich christian nur anschließen, lass debugger mal durch!
od zu testzwecken versuch den text erstmal in einer anderen komponente ausgeben, damit du die messagebox als fehler ausschließen kannst!
-
geht in anderen ausgeben. der fehler scheint irgendwie wirklich nur in der umwandlung zu liegen

-
hopatrick schrieb:
geht in anderen ausgeben. der fehler scheint irgendwie wirklich nur in der umwandlung zu liegen

mit was für ausgaben klapt es den?
mfg
BigNeal
-
hopatrick schrieb:
geht in anderen ausgeben. der fehler scheint irgendwie wirklich nur in der umwandlung zu liegen

zeig doch mal bisschen code, und gib mal paar mehr infos!
zeig code wo es geht
-
also bei denen kklappt das alles problemlos da muss ichs ja auch nicht umwandeln
Label1->Caption=Form1->text(0); GroupBox1->Caption=Form1->text(1); Button1->Caption=Form1->text(5); result=MessageDlg(Blackdeath3D->text(8), mtConfirmation,TMsgDlgButtons()<< mbYes << mbNo, 0);
-
Weil das VCL Funktionalität ist!
Application->Messagebox ruft die WIN 32 API Funktion von Messagebox auf und braucht deswegen char