Hi,
ich will ein Stringgrid abtasten und dabei ein Object auslesen (true oder false). Falls true, dann so er was machen und dann zum nächsten Feld springen. Falls false, dann gleich zur nächsten Zelle.. und das eben bis zum schluß:
Delphi-Quellcode:
for k:=1 to grd-1 do
for i :=grid[k].FixedCols to grid[k].ColCount-1 do
for j := grid[k].FixedRows to grid[k].RowCount-1 do
if zelle.editiert = true then
begin
zelle.editiert:=false;
showmessage(inttostr(zelle.reihe));
end;
Falls ein Objekt gefunden geworde, das true ist, wird dir Reihe angezeigt. Anscheinend bleibt hört es dort aber auf. Auch wenn mehrer Onjekte = true sind wird immer nur die erste angezeigt. Weiß jemand warum?
Nur zur info, so werden die Objekte an die Zelle im Stringgrid angehängt:
Delphi-Quellcode:
k:=0;
While K < ibDataset2.RecordCount do
Begin
grid[grd].RowCount := grid[grd].RowCount +1;
grid[grd].Cells[1,k+1]:=ibdataset2.fieldbyname('ablese_nr').AsString;
grid[grd].Cells[2,k+1]:=ibdataset2.fieldbyname('ablesedatum').AsString;
AddObjectToGrid(1, k+1, ibdataset2.fieldbyname('ablese_nr').AsInteger, grid[grd]);
AddObjectToGrid(2, k+1, ibdataset2.fieldbyname('ablese_nr').AsInteger, grid[grd]);
ibdataset2.Next;
k:=k+1
end;
und per keypress/down werden sie objekte (zelle.editiert) = true.
Thx,
Plautzer