Fórum Dorivan Sousa me ajuda amigo por favor.... #523908
24/06/2015
0
estou com um unico problema.....veja
//uso essa funçao pra selecionar os items da listbox sem precisar clickar nos items.....
//para chamar a funçao uso: //btnShowSelectedClick;
procedure TForm1.btnShowSelectedClick;
var
vSelected: TStrings;
begin
vSelected := TStringList.Create;
try
GetSelectedItems(ListBox2, vSelected);
finally
vSelected.Free;
end;
end;
ate ai tudo bem.......
agora vamos para segunda parte...
//com essa funçao estou usando o Edit7..para passar um numero inteiro..seria a quantidade de items a ser selecionado.... e repassado para o Edit6... e depois deleto os items que foram selecionado.
//parar charmar essa funçao uso ://GetSelectedItems(ListBox2, vSelected); que esta sendo chamado na rotina de cima......
procedure Tform1.GetSelectedItems(ListBox2: TListBox; AList: TStrings);
var
i: Integer;
valor1: Integer;
numero: Integer;
begin
AList.Clear;
Edit6.Clear;
numero := StrToInt(edit7.Text);
for i := 0 to numero -1 do
begin
ListBox2.Selected[numero] := true;
AList.AddObject(ListBox2.Items[numero], ListBox2.Items.Objects[numero]);
Edit6.Text := AList.Text;
Listbox2.DeleteSelected;
if (ListBox2.ItemIndex = ListBox2.Items.Count -1) then
begin
Timer1.Enabled := false;
Timer2.Enabled := false;
end;
end;
end;
Porem se eu digitar no Edit7...o numero 3 ...a listbox começa selecionar os items so depois do terceiro item.... preciso que começe selecionar os items desdo primeiro item... Como posso arrumar isso ????
amigo aqui esta meu problema......
https://www.sendspace.com/file/5ksb8y
fiz um pequeno prejeto mostrando o meu problema....abaixe o codigo fonte aberto para avaliar.....
preencha o edit : Quant: com numeros 2 ou 3 e vai ver o pequeno erro...
grato pela atençao..........
//uso essa funçao pra selecionar os items da listbox sem precisar clickar nos items.....
//para chamar a funçao uso: //btnShowSelectedClick;
procedure TForm1.btnShowSelectedClick;
var
vSelected: TStrings;
begin
vSelected := TStringList.Create;
try
GetSelectedItems(ListBox2, vSelected);
finally
vSelected.Free;
end;
end;
ate ai tudo bem.......
agora vamos para segunda parte...
//com essa funçao estou usando o Edit7..para passar um numero inteiro..seria a quantidade de items a ser selecionado.... e repassado para o Edit6... e depois deleto os items que foram selecionado.
//parar charmar essa funçao uso ://GetSelectedItems(ListBox2, vSelected); que esta sendo chamado na rotina de cima......
procedure Tform1.GetSelectedItems(ListBox2: TListBox; AList: TStrings);
var
i: Integer;
valor1: Integer;
numero: Integer;
begin
AList.Clear;
Edit6.Clear;
numero := StrToInt(edit7.Text);
for i := 0 to numero -1 do
begin
ListBox2.Selected[numero] := true;
AList.AddObject(ListBox2.Items[numero], ListBox2.Items.Objects[numero]);
Edit6.Text := AList.Text;
Listbox2.DeleteSelected;
if (ListBox2.ItemIndex = ListBox2.Items.Count -1) then
begin
Timer1.Enabled := false;
Timer2.Enabled := false;
end;
end;
end;
Porem se eu digitar no Edit7...o numero 3 ...a listbox começa selecionar os items so depois do terceiro item.... preciso que começe selecionar os items desdo primeiro item... Como posso arrumar isso ????
amigo aqui esta meu problema......
https://www.sendspace.com/file/5ksb8y
fiz um pequeno prejeto mostrando o meu problema....abaixe o codigo fonte aberto para avaliar.....
preencha o edit : Quant: com numeros 2 ou 3 e vai ver o pequeno erro...
grato pela atençao..........
Bruno
Curtir tópico
+ 0
Responder
Post mais votado
24/06/2015
Bruno por gentileza, quando for postar trechos de código fonte utilize a tag code:
[img]http://arquivo.devmedia.com.br/forum/imagem/269142-20150624-065606.png[/img]
Quanto a sua dúvida, experimente mudar o índice interno do loop de numero => i:
[img]http://arquivo.devmedia.com.br/forum/imagem/269142-20150624-065606.png[/img]
Quanto a sua dúvida, experimente mudar o índice interno do loop de numero => i:
procedure Tform1.GetSelectedItems(ListBox2: TListBox; AList: TStrings);
var
i: Integer;
valor1: Integer;
numero: Integer;
begin
AList.Clear;
Edit6.Clear;
numero := StrToInt(edit7.Text);
for i := 0 to numero -1 do
begin
ListBox2.Selected[i] := true;
AList.AddObject(ListBox2.Items[i], ListBox2.Items.Objects[i]);
Edit6.Text := AList.Text;
Listbox2.DeleteSelected;
if (ListBox2.ItemIndex = ListBox2.Items.Count -1) then
begin
Timer1.Enabled := false;
Timer2.Enabled := false;
end;
end;
end;
William
Responder
Gostei + 1
Mais Posts
24/06/2015
Bruno
Amigo Deu certinhoo Muito obrigado mesmo sem palavras.......
Responder
Gostei + 0
24/06/2015
Dorivan Sousa
que bom que vc resolveu seu problema Bruno eu executei o codigo que voce postou e nao entendi bem o que era que vc buscava fazer e acabei por esquecer de olhar novamente... quem sabe na proxima eu possa ajudar.
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)