22. november 2004 - 00:04
Der er
11 kommentarer og 1 løsning
Memofelt og char
Jeg har to spørgsmål ang datatyper. 1) Hvilken variabeltype skal jeg bruge til at opbevare alle linier fra en TMemo? vartype Memotekst = Memofelt->Lines; 2) Hvordan henter jeg et felt fra en DB-tabel ud i en variabel af typen char? char Chartekst = IBQuery->FieldByName("Felt")->As ? ;
Annonceindlæg fra NetNordic
22. november 2004 - 00:12
#1
Jeg anvender C++ Builder 5.
22. november 2004 - 00:26
#2
1: TStrings *List = Memofelt->Lines; 2: Ved ikke.
22. november 2004 - 00:41
#3
Tak, det virker jo fint. Men hvordan får jeg så disse linier indsat i en tabel? String SQL="Insert Into Tabel(Felt) Values('"+List+"')"; - og hvordan skal de hentes ud fra tabellen igen til objektet List? Linieskift skulle gerne bevares.
22. november 2004 - 00:53
#4
Man henter og sætter texten som en lang streng. Hver linie er adskilt af "\r\n". void __fastcall TForm1::Button1Click(TObject *Sender) { TStrings *List = Memo1->Lines; MessageBox(0, List->GetText(), "Whatever", MB_OK); List->SetText("Whatever\r\nLine2"); }
22. november 2004 - 00:59
#5
Et lidt mere korrekt eksempel: void __fastcall TForm1::Button1Click(TObject *Sender) { TStrings *List = Memo1->Lines; char *Text = List->GetText(); MessageBox(0, Text, "Whatever", MB_OK); StrDispose(Text); char *NewText = "Whatever\r\nLine2"; List->SetText(NewText); }
22. november 2004 - 01:03
#6
Okay, nu virker mit SQL-statement vist, men jeg kan ikke helt finde ud af at trække listen ud af tabellen igen. TStrings *List; List->SetText(IBQuery->FieldByName("Tekst")->AsString);
22. november 2004 - 01:10
#7
Jeg ved ikke hvordan man hiver ting ud af en DB. Jeg går ud fra at du har sat List til at pege på noget ?
22. november 2004 - 01:14
#8
Det er egentlig også irelevant med tabellen her. Jeg forsøger følgende: TStrings *List1 = Memo1->Lines; String NewList = List1->GetText(); TStrings *List2 = SetText(NewList); Den sidste linie fejler.
22. november 2004 - 01:25
#9
Måske: List->SetText(NewList.c_str());
22. november 2004 - 01:37
#10
Ja, jeg fandt lige ud af, at den vil have en char* fremfor en AnsiString. - men det har du jo også skrevet i dit eksempel. Jeg tror, det hele skulle virke nu, så jeg takker mange gange for hjælpen. Læg gerne et svar.
22. november 2004 - 01:40
#11
Jeg samler ikke på point.
22. november 2004 - 01:43
#12
...
Kurser inden for grundlæggende programmering