Hi,
be careful with that axe,
Eugene Ma.
Zitat von
MaGe:
Somit bekomme ich wohl eine Liste von TStrings, zumindest verstehe ich das so. Damit müsste ich also mit:
Delphi-Quellcode:
MeineTStringListe := TStringList.Create;
MeineTStringListe := Rows[Row]; // Übergabe an MeineTStringliste
.. do something ...
MeineTStringListe.free;
doch die Stringliste von Rows an MeineTStringListe übergeben oder nicht?
Du erhältst einen Zeiger auf die Row, den du natürlich in einer beliebigen Zeiger-Variable ablegen kannst, aber du darfst nicht einfach Objekte freigeben, welche du nie erzeugt hast.
Delphi-Quellcode:
var
sl: TStrings;
begin
// Referenz übernehmen
with StringGrid do
begin
Cells[Col, Row] := 'Hokus';
sl := Rows[Row];
Cells[Col, Row] := 'Pokus';
ShowMessage(sl[Col]);
end;
// Daten übernehmen
with StringGrid do
begin
sl := TStringList.Create;
Cells[Col, Row] := 'Hokus';
sl.Assign(Rows[Row]);
Cells[Col, Row] := 'Pokus';
ShowMessage(sl[Col]);
sl.Free;
end;
end;
Grüße vom marabu