[delphi]Jak programowo poruszać się po ListView ??????

0

Czy można programowo poruszać się po ListView, tzn np. czy istnieje coś typu NEXT, LAST itd--roberto

0

Witam
Zabardzo nie wiem o co Ci chodzi ale moze o to

procedure TForm1.UPClick(Sender: TObject);
var
Item : TListItem;
i : Integer;
begin
if ListView1.SelCount &gt 0 then
begin
i := ListView1.Selected.Index;
Item := ListView1.Selected;
if i=0 then begin
ListView1.SetFocus;
ListView1.Selected := ListView1.Items[i];
ListView1.Scroll(0, (ListView1.Items[i].Top) - 100);
end;
if i &lt&gt 0 then
begin
ListView1.Items.Insert(ListView1.Items.Count);
ListView1.Items[ListView1.Items.Count-1] := ListView1.Items[i];
ListView1.Items[i] := ListView1.Items[i-1];
ListView1.Items[i-1] := ListView1.Items[ListView1.Items.Count-1];
ListView1.Items.Delete(ListView1.Items.Count-1);
ListView1.SetFocus;
ListView1.Selected := ListView1.Items[i-1];
ListView1.Scroll(0, (ListView1.Items[i].Top) - 100);
end;
end;

end;

procedure TForm1.DOWNClick(Sender: TObject);
var
Item : TListItem;
i : Integer;
begin
if ListView1.SelCount &gt 0 then
begin
i := ListView1.Selected.Index;
Item := ListView1.Selected;
if i=(ListView1.Items.Count-1) then begin
ListView1.SetFocus;
ListView1.Selected := ListView1.Items[i];
ListView1.Scroll(0, (ListView1.Items[i].Top) - 100);
end;
if i &lt&gt ListView1.Items.Count -1 then
begin
ListView1.Items.Insert(ListView1.Items.Count);
ListView1.Items[ListView1.Items.Count-1] := ListView1.Items[i];
ListView1.Items[i] := ListView1.Items[i+1];
ListView1.Items[i+1] := ListView1.Items[ListView1.Items.Count-1];
ListView1.Items.Delete(ListView1.Items.Count-1);
ListView1.SetFocus;
ListView1.Selected := ListView1.Items[i+1];
ListView1.Scroll(0, (ListView1.Items[i].Top) - 50);

end;
end;

--Pozdrowienia

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