Also folgendes... ich hab das Tutorial von Luckie mal durchgemacht und mir die Beispielanwendung, das Adressbuch, mal "vorgenommen". Siehe
hier (tutoriallink)
Hab auf das Formular noch ne TListView draufgesetzt. Diese soll genau so gefüllt werden wie das TStringGrid welches schon drauf war. Also hab ich diese prozedur (FillGrid) leicht modifiziert:
Delphi-Quellcode:
procedure tform1.FillGrid(SG: TStringGrid; Cols: TCols; Rows: TRows);
var
i, j : Integer;
NewItem: TlistItem;
clmen: TListColumn;
k : integer;
begin
ListView1.Clear;
SG.ColCount := 0;
SG.RowCount := 0;
if Assigned(Rows) then
begin
SG.RowCount := length(Rows[0]) + 1;
SG.ColCount := length(Cols);
SG.FixedRows := 0;
for i := 0 to length(Cols) - 1 do
begin
SG.Cols[i].Add(Cols[i]);
SG.Cells[i, 0] := Cols[i];
end;
for i := 0 to length(Cols) - 1 do
begin
for j := 0 to length(Rows[0]) - 1 do
begin
SG.Cells[i, j + 1] := Rows[i, j];
end;
end;
end;
if Assigned(Rows) then
begin
for i := 0 to length(Cols) - 1 do
begin
clmen := ListView1.Columns.Add;
clmen.Caption := Cols[i];
end;
for k := 0 to length(rows[0]) + 1 do
begin
NewItem := ListView1.Items.Add;
NewItem.Caption := '';
for i := 0 to length(rows) + 1 do
NewItem.SubItems.Add('');
end;
end;
for i := -1 to length(Cols) - 1 do
begin
for j := 0 to length(Rows[0]) - 1 do
begin
ListView1.Items[j].SubItems[i] := Rows[i, j];
end;
end;
end;
Aber irgendwie funktioniert das nicht richtig... Momentan kommt dann immer ne Fehlermeldung "Zugriffsverletzung..."
Gruß
Martin W