Sair de um Edit com condições no evento OnExit

Delphi

12/04/2004

[b:8e3ffb47b4]Conto com ajuda de todos para solucionar um pequeno problema.
Coloquei uma condição no evento OnExit de um Edit que é assim:
If Edit1.Text = ´´ then
Begin
ShowMessage:=´Digite algo´;
Edit1.SetFocus;
End;
Ou seja se o Edit estiver vazio mostro uma mensagem e volto o foco para o edit, enquanto o usuário não digitar nada o foco fica no edit. Pois bem, mas e se o usuário quiser, por exemplo, cancelar a entrada de dados na tabela clicando no botão Cancelar? Só que o evento de cancelamento não será efetivado porque o Edit ainda está em branco. Se o usuário digitar algo aí sim ele poderá clicar no botão e cancelar a operação, mas isso seria incoveniente, o correto seria cancelar a operação mesmo o edit estando vazio, aí está o meu problema. Como faço para enviar o foco para o botão estando o edit vazio?
Espero respostas de quem puder me ajudar...

________________________________
Em terra de programador, quem tem Delphi é rei.[/b:8e3ffb47b4]


Ponce :)

Ponce :)

Curtidas 0

Respostas

Nerdex

Nerdex

12/04/2004

A princípio é impossivel, pois vc está captando o evento onExit do edit. Sempre quando vc retirar o foco do edit será religiosamente efetuado aquele código para este evento... Desta forma, faça estas considerações como de costume - no evento Gravar, por exemplo verifique se o usuário esqueceu de informal algo naquele edit...


GOSTEI 0
Luis Neto

Luis Neto

12/04/2004

vc pode colocar o ento no momento em que o usuário for salvar a tb, faça uma rotina de averiguação de dados.

Luis Neto
--------------------
Nada sabem os que não tentam


GOSTEI 0
Marco Salles

Marco Salles

12/04/2004

Como faço para enviar o foco para o botão estando o edit vazio?


Adicione uma intrução em seu cádigo:

If (Edit1.Text = ´´)and(not BtCancelar.Focused) then 
Begin 
ShowMessage:=´Digite algo´; 
Edit1.SetFocus; 
End; 


Ao clicar no botão cancelar o foco vai para ele e a mensagem não é executada....
[b:15ee00b677]P:S Cuidado com as Teclas de Atalho Nestas Operações de OnExit....[/b:15ee00b677]


GOSTEI 0
Ponce :)

Ponce :)

12/04/2004

[b:0021f0ca1d]Valeu Marcos Salles pela ajuda.

Reginaldo Ponce

______________________________
Em terra de programador, quem tem Delphi é rei[/b:0021f0ca1d]


GOSTEI 0
Cbier

Cbier

12/04/2004

Pode colocar o código no evento OnEnter do próximo Edit.

CBier


GOSTEI 0
POSTAR