Einzelnen Beitrag anzeigen

playa2k

Registriert seit: 23. Dez 2008
3 Beiträge
 
#13

Re: Listbox mit einer Suchfunktion durchsuchen?

  Alt 23. Dez 2008, 18:13
Zitat von DeddyH:
In Deinem Code seh ich nur, dass die Deklaration der lokalen Variablen i fehlt (außerdem waren bei AnsiContainsText die Parameter vertauscht). Ich habe jetzt mal eine allgemeingültige Prozedur dafür geschrieben.
Delphi-Quellcode:
uses StrUtils;

procedure FilterItems(const sl: TStrings; const substr: string);
var i: integer;
begin
  sl.BeginUpdate;
  try
    for i := Pred(sl.Count) downto 0 do
      if not StrUtils.AnsiContainsText(sl[i],substr) then
        sl.Delete(i);
  finally
    sl.EndUpdate;
  end;
end;
Beispielaufruf:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
  FilterItems(ListBox1.Items,Edit1.Text);
end;
Bei mir funktioniert es wie gedacht.
Danke für deine Mühen.

Ich habe einiges umgeändert, damit es auch bei mir läuft.(TForm2<-----)
Das Programm will "procedure FilterItems(const sl: TStrings; const substr: string);" nich bei den Deklerationen haben?
->Unsatisfied Forward or external decleration.
Hab den Teil dann mal als Versuch "aus-geslasht" (//).
Das Programm läuft dann zwar, aber wenn ich auf Suchen klicke wird Listbox einfach geleert, egal was ich in Edit1 schreibe.

play
  Mit Zitat antworten Zitat