ListView

19/12/2005

0

Como posso pegar somente as linhas selecionadas em um listView?
Abs


Felipeiw

Felipeiw

Responder

Posts

19/12/2005

Jairroberto

Olá, Felipe!

Veja o exemplo do método ´GetNextItem´ do objeto TCustomListView:

This example demonstrates how to retrieve all selected items in a ListView component and add the Caption of the selected ListItems to a ListBox component. procedure TForm1.Button1Click(Sender: TObject); var Item: TListItem; begin Item := ListView1.Selected; while Item <> nil do begin ListBox1.Items.Add(Item.Caption); Item := ListView1.GetNextItem(Item, sdAll, [isSelected]); end; end;



Um abraço,
Jair


Responder

20/12/2005

Bruno Belchior

Uma outra maneira...
var
  Cont: Smallint;
begin
  for Cont := 0 to LstVw.SelCount - 1 do
    ShowMessage(LstVw.Items[Cont].Caption);
end;



Responder

20/12/2005

Michael

Olá Bruno!

O seu código não vai funcionar, pois o valor de Cont será sempre de 0 até o total de itens selecionados. Se eu selecionar dentre 10 elementos o primeiro, o quinto e o último, por exemplo, vou receber o primeiro, o segundo e o terceiro (0 até 2).

Uma alternativa seria:

var
  I: Integer;
begin
  for I := 0 to ListView.Items.Count - 1 do
    if ListView.Items[I].Selected then
      FazAlgumaCoisa;
end;


[]´s


Responder

20/12/2005

Bruno Belchior

É verdade...


Responder

Que tal ter acesso a um e-book gratuito que vai te ajudar muito nesse momento decisivo?

Ver ebook

Recomendado pra quem ainda não iniciou o estudos.

Eu quero
Ver ebook

Recomendado para quem está passando por dificuldades nessa etapa inicial

Eu quero

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar