Simples comaração entre dois listbox... não to consiguindo..
Tenho dois listbox, cada um com uma listagem diferente. A idéia é que eu seleciona-se um item do listbox2 e no click do botão ele verifica-se se há no listbox1 um item com o msm nome q foi selecionado no listbox2, se tiver deleta ele.
Já tentei ´n´ vezes e não consegui...
Vlw... té mais...
Já tentei ´n´ vezes e não consegui...
Vlw... té mais...
Madcat
Curtidas 0
Respostas
Vinicius2k
16/06/2006
Colega,
Vejo duas opções...
A mais simples:
A mais complicada, que eu fiz primeiro, reinventando a roda... pra variar:
Recentemente, andamos ´brincando´ com TListBox [url=http://forum.clubedelphi.net/viewtopic.php?t=78165]neste tópico[/url]. Talvez você possa aproveitar algo...
Vejo duas opções...
A mais simples:
... var Indice: Integer; begin // Verifica se algo está selecionado no ListBox2 // Nota: caso MultiSelect = True, sempre o 1º item // está selecionado, o que torna este teste sempre // verdadeiro. if not (ListBox2.ItemIndex = - 1) then begin Indice := ListBox1.Items.IndexOf(ListBox2.Items[ListBox2.ItemIndex]); if not (Indice = -1) then ListBox1.Items.Delete(Indice); end; end;
A mais complicada, que eu fiz primeiro, reinventando a roda... pra variar:
... var I, Contador: Integer; begin // Verifica se algo está selecionado no ListBox2 // Nota: caso MultiSelect = True, sempre o 1º item // está selecionado, o que torna este teste sempre // verdadeiro. if not (ListBox2.ItemIndex = - 1) then begin // Prepara as variáveis I := 0; Contador := ListBox1.Items.Count; // Percorre o ListBox1 procurando pelo item selecionado no ListBox2 while I < Contador do begin // Se encontrar correspondência... if ListBox1.Items[I] = ListBox2.Items[ListBox2.ItemIndex] then begin // Deleta o ítem. ListBox1.Items.Delete(I); // Decrementa o contador de ítens. Dec(Contador); end; // Incrementa o controlador do laço Inc(I); end; end; end;
Recentemente, andamos ´brincando´ com TListBox [url=http://forum.clubedelphi.net/viewtopic.php?t=78165]neste tópico[/url]. Talvez você possa aproveitar algo...
GOSTEI 0
Madcat
16/06/2006
Caiu como uma luva!!! Vlw, muito obrigado.
GOSTEI 0