Comparar 2 ListBox
Estou tentando comparar 2 ListBox
Recebo todos os valores em um 1º ListBox. Posterior alguns desses valores em um 2º ListBox. Sendo que esses valores são itens em comum com o mesmo Nome.
O que estou tentando fazer é:
Todo o valor que estiver no 2º listbox seja deletado do 1º listbox.
algo tipo:
if listbox1.items = listbox2.items then
deletar item do listbox1;
agradeço a ajuda!
Recebo todos os valores em um 1º ListBox. Posterior alguns desses valores em um 2º ListBox. Sendo que esses valores são itens em comum com o mesmo Nome.
O que estou tentando fazer é:
Todo o valor que estiver no 2º listbox seja deletado do 1º listbox.
algo tipo:
if listbox1.items = listbox2.items then
deletar item do listbox1;
agradeço a ajuda!
Maiquelnet
Curtidas 0
Respostas
Steve_narancic
09/08/2009
faz um laço (for) percorrendo os itens do primeiro combox comparando os itens do segundo combobox
GOSTEI 0
Maiquelnet
09/08/2009
isto...
tentei comparar mas código esta errado. ele lista apenas a primeira instancia.
procedure TFormcalendario.BitBtn3Click(Sender: TObject);
var
quant, i, x, quantx: integer;
begin
quant:=ListBox1.Count;
quantx:=ListBox2.Count;
for x:=0 to quant do begin
for i:=0 to quantx do begin
if (ListBox1.Items.Text[x]) <> (ListBox2.Items.Text[i]) then
ListBox3.Items.Add(ListBox1.Items.Text);
end;
end;
end;
tenho todos os items no 1º listbox, e alguns deles no 2º lisbox. Clicando no botão gostaria que apenas os que não repetem fossem para um 3º listbox.
tentei comparar mas código esta errado. ele lista apenas a primeira instancia.
procedure TFormcalendario.BitBtn3Click(Sender: TObject);
var
quant, i, x, quantx: integer;
begin
quant:=ListBox1.Count;
quantx:=ListBox2.Count;
for x:=0 to quant do begin
for i:=0 to quantx do begin
if (ListBox1.Items.Text[x]) <> (ListBox2.Items.Text[i]) then
ListBox3.Items.Add(ListBox1.Items.Text);
end;
end;
end;
tenho todos os items no 1º listbox, e alguns deles no 2º lisbox. Clicando no botão gostaria que apenas os que não repetem fossem para um 3º listbox.
GOSTEI 0
Osocram
09/08/2009
Ei amigo... tenta isso.
procedure TForm1.btnClick(Sender: TObject); var i:integer; begin for I:=0 to ListBox2.Count -1 do begin if ListBox1.Items.IndexOf(ListBox2.Items[i]) <> -1 then ListBox1.Items.Delete(ListBox1.Items.IndexOf(ListBox2.Items[i])); end; end;
GOSTEI 0
Maiquelnet
09/08/2009
ok. show de bola osocram...
seu código funcionou perfeitamente...
o meu estava muito incorreto, nunca iria chegar neste resultado!!!!!
MUITO OBRIGADO, mesmooooooooo!!!!!!!!!
seu código funcionou perfeitamente...
o meu estava muito incorreto, nunca iria chegar neste resultado!!!!!
MUITO OBRIGADO, mesmooooooooo!!!!!!!!!
GOSTEI 0