[PR]szukanie w TListView (inne)

0

dobra, mam takie coś:

var
Index, i: Integer;
begin
for i := 0 to ListView1.Items.Count - 1 do
if Pos(UpperCase(Edit1.Text),Uppercase(ListView1.Items.Item[i].Caption)) > 0 then
begin
Index := i;
ListView1.Items.Item[i].Selected := True;
ListView1.SetFocus ;
end;
end;

niby dobrze, ale jest jeden (praktycznie najważniejszy) problem - przeszukiwanie przelatuje mi całą zawartość ListView do samego konca i zaznacza mi ostatnią wartość jaka odpowiada zawartości Edit.
Ma może ktoś jakiś pomysł aby zrobić coś w stylu FindNext? chodzi mi o to żeby pętla zatrzymywała mi się na znaleźionej pozycji i szła dalej dopiero gdy kolejny raz zostanie wywołana przez np. naciśnięcie przycisku.
Mam nadzieję że w miare jasno opisałem swój problem.

z góry dzieki.

pozdro.

0
var
 i: Integer;
begin

 for i := ListView1.ItemIndex +1 to ListView1.Items.Count - 1 do
  if Pos(UpperCase(Edit1.Text),Uppercase(ListView1.Items[i].Caption)) > 0 then
        begin
          ListView1.SetFocus;
          ListView1.ItemIndex := i;
          Exit;
        end;

 ListView1.ItemIndex := -1;

end;

Jeśli nie jest zaznaczona żadna pozycja to funkcja wyszukuje od początku listy. W przeciwnym wypadku wyszukuje od następnego elementu.

0

wielkie dzięki :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1