Ajuda - Listbox
Tenho um listbox que vai do numero 1 ao 100 e vai ficar visível no formulário para que os usuários possam selecionar.
Ao selecionar o numero no listbox por exemplo 1, é preciso aparecer no edit1 um valor que representa o numero 1
Tipo assim:
Numero 1 do listbox vale 200
Numero 2 do listbox vale 210
Numero 3 do listbox vale 220
Assim por diante até o numero 100, cada numero é representado por um valor, e esse valor precisa aparecer no edit1
Encontrei esse código na net, mais o que esta aparecendo no edit1 é o numero selecionado no listbox, quando eu preciso que apareça seu representante.
procedure TForm1.ListBox1Click(Sender: TObject);
begin
edit1.Text := ListBox1.Items.Strings[Listbox1.ItemIndex];
Ao selecionar o numero no listbox por exemplo 1, é preciso aparecer no edit1 um valor que representa o numero 1
Tipo assim:
Numero 1 do listbox vale 200
Numero 2 do listbox vale 210
Numero 3 do listbox vale 220
Assim por diante até o numero 100, cada numero é representado por um valor, e esse valor precisa aparecer no edit1
Encontrei esse código na net, mais o que esta aparecendo no edit1 é o numero selecionado no listbox, quando eu preciso que apareça seu representante.
procedure TForm1.ListBox1Click(Sender: TObject);
begin
edit1.Text := ListBox1.Items.Strings[Listbox1.ItemIndex];
Luis Sergio
Curtidas 0
Respostas
Marcos Oliveira
18/09/2013
Luiz, seu código está correto. Inclusive, copiei o seu código e testei e está funcionando perfeitamente.
Pode ter algum outro erro que você não tenha visto, mas, o código está correto.
Pode ter algum outro erro que você não tenha visto, mas, o código está correto.
GOSTEI 0
Luis Sergio
18/09/2013
cada item (numero) do listbox representa um valor.
Achei um codigo na net que atendeu minhas necessidades, veja:
if ComboBox1.Items.Strings[ComboBox1.ItemIndex]= '1' then
edit1.text:=('200');
Assim preenchi do numero ao 100 e já funciocou.
Pra finalizar só me restou um problema. Quando o arquivo está executando, o usuario pode com o mouse crescer o form, queria travar essa opção, para que ficasse no tamanho padrão sem da chances do usuario arastar suas laterias e fazer crescer o form.
Achei um codigo na net que atendeu minhas necessidades, veja:
if ComboBox1.Items.Strings[ComboBox1.ItemIndex]= '1' then
edit1.text:=('200');
Assim preenchi do numero ao 100 e já funciocou.
Pra finalizar só me restou um problema. Quando o arquivo está executando, o usuario pode com o mouse crescer o form, queria travar essa opção, para que ficasse no tamanho padrão sem da chances do usuario arastar suas laterias e fazer crescer o form.
GOSTEI 0
Luis Sergio
18/09/2013
Tudo resolvido e aplicação pronta, Obrigado.
GOSTEI 0
Luis Sergio
18/09/2013
Tudo resolvido e aplicação pronta, Obrigado.
GOSTEI 0
Alan Souza
18/09/2013
vc está fazendo 1 if pra cada posição do ListBox?
tem uma forma mais simples de fazer:
Ao preencher a listbox
para ler no evento onclick da listbox
tem uma forma mais simples de fazer:
Ao preencher a listbox
ListBox.Items.AddObject('1', TObject(200));
ListBox.Items.AddObject('2', TObject(201));
ListBox.Items.AddObject('3', TObject(202));
ListBox.Items.AddObject('4', TObject(203));
ListBox.Items.AddObject('5', TObject(204));
{continua até sua necessidade, pode ser melhorado com laço}
para ler no evento onclick da listbox
Edit1.Text := IntToStr(Integer(ListBox.Items.Objects[ListBox.ItemIndex]));
GOSTEI 0
Deivison Melo
18/09/2013
[b]Caro Luis Sergio[/b],
É interessante postar a solução prosposta para que sirva de help para algum usuário do fórum.
Veja que o [b]Marcos Oliveira[/b] teve o cuidado em testar o seu código e também o [b]Alanps[/b]
sugeriu um código com uma outra solução.
Já que cada analista/desenvolvedor vai sempre sugerir uma solução com sua visão técnica e de negócio,
mas sempre chegando no nosso objetivo final que é o funcionamento da rotina e a satisfação referente
a dúvida postada aqui no fórum!
Obrigado a todos e bons códigos!
E vamos que vamos!!
Abraços!!
É interessante postar a solução prosposta para que sirva de help para algum usuário do fórum.
Veja que o [b]Marcos Oliveira[/b] teve o cuidado em testar o seu código e também o [b]Alanps[/b]
sugeriu um código com uma outra solução.
Já que cada analista/desenvolvedor vai sempre sugerir uma solução com sua visão técnica e de negócio,
mas sempre chegando no nosso objetivo final que é o funcionamento da rotina e a satisfação referente
a dúvida postada aqui no fórum!
Obrigado a todos e bons códigos!
E vamos que vamos!!
Abraços!!
GOSTEI 0
Luis Sergio
18/09/2013
Pois não moderador, segue a solução:
procedure TForm1.ComboBox1Change(Sender: TObject);
begin
if ComboBox1.Items.Strings[ComboBox1.ItemIndex]= '1' then
edit1.text:=('200');
Como estou rastejando no delphi, a primeira solução que encontrei mesmo sendo trabalhosa, achei melhor deixar assim porque ela funcionou.
Lembrando que tive que fazer do item 1 ao 100 manualmente e colocar seus devidos valores.
Obrigado ia todos
procedure TForm1.ComboBox1Change(Sender: TObject);
begin
if ComboBox1.Items.Strings[ComboBox1.ItemIndex]= '1' then
edit1.text:=('200');
Como estou rastejando no delphi, a primeira solução que encontrei mesmo sendo trabalhosa, achei melhor deixar assim porque ela funcionou.
Lembrando que tive que fazer do item 1 ao 100 manualmente e colocar seus devidos valores.
Obrigado ia todos
GOSTEI 0
Luis Sergio
18/09/2013
Pois não moderador, segue a solução:
procedure TForm1.ComboBox1Change(Sender: TObject);
begin
if ComboBox1.Items.Strings[ComboBox1.ItemIndex]= '1' then
edit1.text:=('200');
Como estou rastejando no delphi, a primeira solução que encontrei mesmo sendo trabalhosa, achei melhor deixar assim porque ela funcionou.
Lembrando que tive que fazer do item 1 ao 100 manualmente e colocar seus devidos valores.
Obrigado ia todos
procedure TForm1.ComboBox1Change(Sender: TObject);
begin
if ComboBox1.Items.Strings[ComboBox1.ItemIndex]= '1' then
edit1.text:=('200');
Como estou rastejando no delphi, a primeira solução que encontrei mesmo sendo trabalhosa, achei melhor deixar assim porque ela funcionou.
Lembrando que tive que fazer do item 1 ao 100 manualmente e colocar seus devidos valores.
Obrigado ia todos
GOSTEI 0
Luis Sergio
18/09/2013
[b]Caro Luis Sergio[/b],
É interessante postar a solução prosposta para que sirva de help para algum usuário do fórum.
Veja que o [b]Marcos Oliveira[/b] teve o cuidado em testar o seu código e também o [b]Alanps[/b]
sugeriu um código com uma outra solução.
Já que cada analista/desenvolvedor vai sempre sugerir uma solução com sua visão técnica e de negócio,
mas sempre chegando no nosso objetivo final que é o funcionamento da rotina e a satisfação referente
a dúvida postada aqui no fórum!
Obrigado a todos e bons códigos!
E vamos que vamos!!
Abraços!!
É interessante postar a solução prosposta para que sirva de help para algum usuário do fórum.
Veja que o [b]Marcos Oliveira[/b] teve o cuidado em testar o seu código e também o [b]Alanps[/b]
sugeriu um código com uma outra solução.
Já que cada analista/desenvolvedor vai sempre sugerir uma solução com sua visão técnica e de negócio,
mas sempre chegando no nosso objetivo final que é o funcionamento da rotina e a satisfação referente
a dúvida postada aqui no fórum!
Obrigado a todos e bons códigos!
E vamos que vamos!!
Abraços!!
Pois não moderador, segue a solução:
procedure TForm1.ComboBox1Change(Sender: TObject);
begin
if ComboBox1.Items.Strings[ComboBox1.ItemIndex]= '1' then
edit1.text:=('200');
Como estou rastejando no delphi, a primeira solução que encontrei mesmo sendo trabalhosa, achei melhor deixar assim porque ela funcionou.
Lembrando que tive que fazer do item 1 ao 100 manualmente e colocar seus devidos valores.
Obrigado ia todos.
GOSTEI 0
Luis Sergio
18/09/2013
Desculpe pelas inúmeras repetições, é que deu erro na hora de enviar, e pensei que nenhuma anterior tinha chegado ao site. Por favor apague algumas moderador.
GOSTEI 0
Deivison Melo
18/09/2013
Obrigado por postar a solução, assim outros usuários que compartilharem a mesma dúvida poderão usufruir da solução proposta!
Seja bem vindo ao fórum, sempre que precisar estaremos por aqui!!
Abração e bons códigos!
Seja bem vindo ao fórum, sempre que precisar estaremos por aqui!!
Abração e bons códigos!
GOSTEI 0