Não usar SetFocus
Amigos, eu preciso é fazer o seguinte. Quando o usuário teclar Esc, em qualquer dos meus Edits, Combo e etc, o cursor volte para o Controle Anterior. Setei uma variável no OnKeyPress do Form, mas se eu dou um EXit, caso ela seja True, ele vai para o próximo controle , e não ao anterior. Tem como eu fazer o que eu quero, sem setar SetFocus, ou somente com SetFocus? Outra coisa: Se eu dou Esc, em qualquer edit, combo e etc, não acontece, mas a Var fica setada, pois eu chamei o evento do Form e não do componente em questão. Só uma obs.
Paulo
Curtidas 0
Respostas
Onjahyr
14/02/2008
if Key = VK_ESCAPE then begin Perform(WM_NEXTDLGCTL,1,0); Key := 0; end;
Assim vai funcionar, volta para o objeto anterior...
Se funcionar diz...
GOSTEI 0
Paulo
14/02/2008
onjair, funcionou legal. Valeu!!!!!
GOSTEI 0
Paulo
14/02/2008
Tenho só mais uma pergunta. O TabOrder, de um componente é 0. Acontece, que após eu abrir uma venda, esse componente fica com o Enabled = False. Então, como faço para quando eu teclar Esc, ele não for para este componente, mas para o primeiro Activo(Enabled = True)?
GOSTEI 0
Onjahyr
14/02/2008
É automático, se o componente está desabilitado ele vai imediatamente para o anterior.
GOSTEI 0
Paulo
14/02/2008
Fiz no OnActivate do Form assim:
Parece que funcionou.
if Edit1.Enabled then
ActiveControl := Edit1
else
ActiveControl := Edit2;
Parece que funcionou.
GOSTEI 0
Onjahyr
14/02/2008
Bom, na pergunta que vc havia feito estava [b:ba6bf725c5]se eu clicar ESC[/b:ba6bf725c5], mas vc está querendo ao abrir uma janela e o ActiveControl está apontado para um componente desabilitado, parece que é isso né? Se for isso, pode ser feito desse jeito, ou.... Para economizar código, em vez de desabilitar um objeto, vc poderia colocar a propriedade dele: [b:ba6bf725c5]ReadOnly[/b:ba6bf725c5] para [b:ba6bf725c5]True[/b:ba6bf725c5], então, não precisa desse código ele vai ficar sem poder escrever nele.... Quanto menos código seu aplicativo vai ser mais rápido e mais fácil de corrigir...
Mas vc quem sabe, este que vc fez funciona também...
Blz.
Mas vc quem sabe, este que vc fez funciona também...
Blz.
GOSTEI 0