Posicao em um Combo

21/09/2004

0

Oi Galera

Utilizo Delphi 6

Como posso fazer com que o combo, ou dbcombo, reconheça que a lista dos itens terminou e volta ao início dela e reconhecer que chegou no início e ir ao final da lista.

Explicando melhor, quando o usuário estiver no primeiro ítem da lista do combo, ou dbcombo, e pressionar a tecla para cima ele vá automaticamente para o último ítem da lista, e se estiver no último ítem da lista e pressionar seta para baixo volte ao primeiro ítem.

Antecipadamente Agradeço qualquer ajuda.


Salupe

Salupe

Responder

Posts

21/09/2004

Marcelo Saviski

tente modificar manualmente a linha selecionada, usndo o OnKeyDown:

no OnKeyDown do Combo;

if (Key = VK_UP) and (Combo.ItemIndex = 0) then
  Combo.ItemIndex := Combo.Itens.Count - 1
else if (Key = VK_DOWN) and (Combo.ItemIndex = Combo.Itens.Count - 1) then
  Combo.ItemIndex := 0;


Se usar a seta p/ cima, e estiver no 1º item, vai p/ o último, senão se for a tecla p/ baixo e estiver no último item vai p/ o 1º

deu certo?


Responder

21/09/2004

Salupe

Obrigado pela ajuda Marcelo, quase deu certo.

ele somente foi colocado uma posicao acima ou abaixo dependendo do caso, mas não foi para as posições opostas. ex. estando no primeiro ele foi para o segundo e nao para o oitavo como deveria ser.

O que pode ter acontecido errado, aparentemente estaria certo sua rotina.


Responder

21/09/2004

Marcelo Saviski

estranho, tente isso no fim, mas não sei se adianta.

if Key in[VK_UP, VK_DOWN] then 
  Key := 0;



Responder

21/09/2004

Salupe

também não deu, aliás nem mostrou mais os ítens.


Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar