Thema: Delphi In ListView suchen

Einzelnen Beitrag anzeigen

dopeline

Registriert seit: 7. Mär 2003
Ort: Berlin
304 Beiträge
 
Delphi 7 Enterprise
 
#1

In ListView suchen

  Alt 13. Jul 2004, 13:10
Hallo!

Ich habe ein ListView mit 5 Spalten. Ich möchte nach einem String/bzw. Teilstring suchen. Jedoch funktioniert es nicht so, wie ich es mir vorgestellt habe:
Delphi-Quellcode:
var
  BackZeile,zeile,spalte:integer;
  weiter:boolean;

...

procedure Suche (SuchString:String; ListView:TListView; Zeile:Integer; Button:TButton);
var r,c:integer;
    gefunden:boolean;
begin
  begin
   gefunden:=False;
    if trim(SuchString) <> 'then
     begin
      For r:=zeile to ListView.Items.Count-1 do
       For c:=0 to ListView.Columns.Count-1 do
        If (AnsiPos(LowerCase(SuchString),LowerCase(ListView.Items.Item[r].SubItems.Strings[c])) <> 0) then
         begin
          gefunden:=True;
          zeile:=r+1;
          Button.Caption:='Weitersuchen';
          BackZeile:=zeile;
          exit;
         end;
      if not gefunden then MessageDlg('" '+SuchString+'" wurde nicht gefunden', mtInformation, [mbOK],0);
     end
    else MessageDlg('Das Eingabefeld ist leer', mtInformation, [mbOK],0);
  end;
end;

procedure TForm4.Button1Click(Sender: TObject);
begin
Suche(Esuche.Text,Form1.ListView1,zeile,Button1);
zeile:=BackZeile;
end;
Hat jemand einen funktionierenden Suchalgorithmus für ein Listview?

Gruß, dopeline
  Mit Zitat antworten Zitat