Jump to content
Fórum Script Brasil
  • 0

Problemas No Listbox


luizf
 Share

Question

Olá pessoal, estou precisando de mais uma ajudinha.

Estou montando um formulario que contem, alem de outros, um listbox e um label, onde o listbox contem 11 itens (11 linhas:= ItemIndex 0, ItemIndex 1, ......, ItemIndex 10).

E, o que estou precisando, é ao mudar de uma linha para outra o label seja alterado e execute um determinado executavel que o corresponde (essas 11 linhas, são 11 nomes de executaveis).

Bom, consegui fazer isso com o clique do mouse, sobre cada item clicado era alterado o label. Coloquei a seguinte rotina no OnMouseDown do listbox:

begin
  case Lstbox_execut.ItemIndex of
      0 : Label1.caption:= 'Executavel 1';
      1 : Label1.caption:= 'Executavel 2';
      ............ 
      ............ 
    10 : Label1.caption:= 'Executavel 11';
  end;
end;

Mas, não consegui fazer mudar com o teclado, tentei colocar a mesma rotina no OnKeyDown do listbox, mas não deu certo, ou melhor deu certo até uma parte.

Quando vou mudar de item atravez do teclado, ao teclar pela primeira vez, ao invez de aparecer o item 1, aparece o item 2 e quando chega ao ultimo item ao invez de para caso pressione a tecla mais uma vez, o listbox é alterado mais uma vez, o mesmo ocorre no sentido decrescente, não para no item 1.

alguém pode me dar uma dica de como resolver, fico grato.

T+++ ;)

.

Link to comment
Share on other sites

2 answers to this question

Recommended Posts

  • 0
Mas, não consegui fazer mudar com o teclado, tentei colocar a mesma rotina no OnKeyDown do listbox, mas não deu certo, ou melhor deu certo até uma parte.
luizf, apenas complementando o que o Churc sugeriu, caso não seja o que você já está fazendo, no evento OnKeyUp coloque apenas a chamada para o procedimento OnClick do seu ListBox (não repita o código). Tipo:
procedure Form1.Lstbox_executKeyUp(Sender: TObject; var Key: Word; Shift: TShiftState);
begin
  Lstbox_executClick(Sender);
end;

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share



  • Forum Statistics

    • Total Topics
      151k
    • Total Posts
      649.1k
×
×
  • Create New...