Einzelnen Beitrag anzeigen

marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#12

Re: Stringgrid nach einem Begriff durchsuchen und....

  Alt 13. Nov 2006, 11:33
Hallo Hansa,

wenn man sich auf das Wesentliche konzentriert, dann sieht der Code wirklich nicht sehr aufregend aus:

Delphi-Quellcode:
procedure CopyRowsContaining(sg, sgResult: TStringGrid; search: String);
var
  i: Integer;
begin
  ClearGrid(sgResult);
  with sg do
    for i := FixedRows to Pred(RowCount) do
      if AnsiContainsText(Rows[i].Text, search) then
        AppendRow(sgResult, Rows[i]);
end;
Hier noch das Unwesentliche für Grids ohne FixedCols:

Delphi-Quellcode:
procedure ClearGrid(sg: TSTringGrid);
var
  iCol: Integer;
begin
  with sg do
  begin
    RowCount := Succ(FixedRows);
    for iCol := FixedCols to Pred(ColCount) do
        Cells[iCol, FixedRows] := '';
    Tag := 0; // internal rowcount
  end;
end;

procedure AppendRow(sg: TStringGrid; s: TStrings);
begin
  with sg do
  begin
    if Tag > 0 then
      RowCount := RowCount + 1;
    Rows[Pred(RowCount)].Assign(s);
    Tag := Succ(Tag); // internal rowcount
  end;
end;
Grüße vom marabu
  Mit Zitat antworten Zitat