Fórum Saber qual é o próximo componete do TabOrder #237631

14/06/2004

0

Olá Pessoal, como vai essa força?
Preciso da ajuda de vcs. No evento OnExit de um edit, eu preciso saber qual vai ser o próximo componente do TabOrder, ou, saber se o TabOrder esta se deslocando pra cima ou pra baixo na lista.
Eu tentei o FindNextControl, mas estou com dificudades (não retorna o que eu quero). Se alguem sabe usa-lo, me de uma mão.
Agradeço desde de já.


Flaviosan

Flaviosan

Responder

Posts

14/06/2004

Aroldo Zanela

Colega,

Não sei se entendi, mas basta pressionar o botão direito do mouse sobre o form (popup menu), selecionar TabOrder para verificar e alterar se necessário.


Responder

Gostei + 0

14/06/2004

Flaviosan

Caro AZ, Minha duvida é em tempo de execução.


Responder

Gostei + 0

14/06/2004

Aroldo Zanela

Colega,

Para obter a lista de tab order, tem o método: GetTabOrderList(TList). Mas não sei se é o que está procurando.


Responder

Gostei + 0

15/06/2004

Flaviosan

Vou dar um exemplo:
Tenho um form com tres edits, o 1º armazena uma data, o 2º armazena o codigo do cliente, e o terceiro o codigo do vendedor. Inicio o sistema com o foco no 1º edit. Digito uma data qualquer e vou para o 2º edit. Agora a minha duvida: não posso deixar que sem digitar nada no 2º edit, o foco seja passado para o 3º edit. Mas posso passar o foco para o 1º edit. O que eu preciso saber se o foco esta indo para cima ou para baixo do taborder. Espero ter explicado melhor desta vez.
Obrigado


Responder

Gostei + 0

15/06/2004

Paulo_amorim

Olá

Se o caso é esse, não compensa vc usar if´s?

if edit2.Text = ´´ then
begin
  if edit3.Focused then ShowMessage(´Passou pro edit3 sem preencher o edit2´);
end;


Espero que ajude
Até+


Responder

Gostei + 0

15/06/2004

Flaviosan

Caro Paulo, valeu pela ajuda, mas não posso deixar o foco sair do 2º edit.
O que eu quero fazer pode ser resolvido pela função FindNextControl, Mas não entendi direito como se usa. Com ela no evento onexit de um edit consigo saber qual é o proximo componente da taborder, sem sair do edit atual. Como disse, não entendi como se usa, o help do delphi que é sempre uma grande ajuda, esta meio incompleto nesta função. Se voce ou alguem sabe como usa-la, me dê uma mão, please.
Agradeço novamente.


Responder

Gostei + 0

15/06/2004

Flaviosan

up


Responder

Gostei + 0

15/06/2004

Xanatos

flaviosan o que voce precisa nao é do FindNExtControl !! eu olhei o help e vi como ele funciona e nao vai adiantar! ele via retorna o proximo ou o
anterior a partir do componente que voce usar

if FindNextControl(Edit2,true,true,false) = Edit3 then
// Ele retorna Edit3 independente de onde vai o focus!!!

O que voce quer pelo que entendi é GetFocus

No Evento OnExit do Edit2 coloque:

if GetFocus = Edit3.Handle then
Showmessage(´Indo pra Frente!´);
if GetFocus = Edit1.Handle then
Showmessage(´Indo pra traz!´);

E isso deve funcionar!!! :idea:


Responder

Gostei + 0

15/06/2004

Flaviosan

Nossa! Santo Xanatos, eraissomesmoqueeuqueria.
Muito obrigado cara.


Responder

Gostei + 0

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

Aceitar