ActiveDelphi - Índice do Fórum ActiveDelphi
.: O site do programador Delphi! :.
 
 FAQFAQ   PesquisarPesquisar   MembrosMembros   GruposGrupos   RegistrarRegistrar 
 PerfilPerfil   Entrar e ver Mensagens ParticularesEntrar e ver Mensagens Particulares   EntrarEntrar 

Ao clicar no botão fechar, não disparar o evento onExit.

 
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Delphi
Exibir mensagem anterior :: Exibir próxima mensagem  
Autor Mensagem
michaeldca
Novato
Novato


Registrado: Sábado, 5 de Mai de 2012
Mensagens: 15

MensagemEnviada: Sex Fev 22, 2013 9:22 am    Assunto: Ao clicar no botão fechar, não disparar o evento onExit. Responder com Citação

Bom dia galera.

Estou com um problema nas minhas mãos e espero que vocês possam me ajudar.

Bom....tenho dois campos de data (TMaskEdit), um para a inicial e outra para final.

vou em qualquer um dos dois e coloco uma data inválida, depois vou e clico no botão Fechar (que eu programei e não o do Windows) ele passa no OnExit do campo e fala que a data está inválida e não me deixa prosseguir.

Minha dúvida é. Tem como eu saber qual Componente/Evento que chamou o OnExit para eu verificar se foi o botão Fechar ou não?


Grato se puderem ajudar.

Brigaduuuu!
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
johnny-walker
Moderador
Moderador


Registrado: Sábado, 4 de Outubro de 2003
Mensagens: 10653
Localização: Contagem/MG - BRAZIL

MensagemEnviada: Sex Fev 22, 2013 9:37 am    Assunto: Responder com Citação

Teste a validade da data e passe Editmask.clear, claro que se vc não testar antes do formulário sair dará erro mesmo.
Teste com um try..except silencioso, lembrando que a exceção do editmask não é exposta e vc tem sempre problemas.

Eu fiz isto num que tinha editmask, utilizando o ApplicationEvents:

Código:
procedure TfrmVerifyCPFCNPJ.ApplicationEvents1Exception(Sender: TObject;
  E: Exception);
begin
     if Pos('Invalid input', E.Message) > 0 then
     begin
        meCNPJ_CPF.Clear;
        Close;
     end;
end;



Só que somente tem este componente, mas tb deve funcionar.



bye
_________________
P.O.W.E.R B.Y D.E.L.P.H.I
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular MSN Messenger
michaeldca
Novato
Novato


Registrado: Sábado, 5 de Mai de 2012
Mensagens: 15

MensagemEnviada: Sex Fev 22, 2013 10:13 pm    Assunto: Responder com Citação

johnny-walker escreveu:
Teste a validade da data e passe Editmask.clear, claro que se vc não testar antes do formulário sair dará erro mesmo.
Teste com um try..except silencioso, lembrando que a exceção do editmask não é exposta e vc tem sempre problemas.

Eu fiz isto num que tinha editmask, utilizando o ApplicationEvents:

Código:
procedure TfrmVerifyCPFCNPJ.ApplicationEvents1Exception(Sender: TObject;
  E: Exception);
begin
     if Pos('Invalid input', E.Message) > 0 then
     begin
        meCNPJ_CPF.Clear;
        Close;
     end;
end;



Só que somente tem este componente, mas tb deve funcionar.



bye


Bom...quando voltar ao trabalho na segunda eu testo e retorno a resposta.

mas agradeço desde já.

valeu
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
johnny-walker
Moderador
Moderador


Registrado: Sábado, 4 de Outubro de 2003
Mensagens: 10653
Localização: Contagem/MG - BRAZIL

MensagemEnviada: Sáb Fev 23, 2013 12:04 pm    Assunto: Responder com Citação

Disponha amigo.



bye
_________________
P.O.W.E.R B.Y D.E.L.P.H.I
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular MSN Messenger
michaeldca
Novato
Novato


Registrado: Sábado, 5 de Mai de 2012
Mensagens: 15

MensagemEnviada: Ter Fev 26, 2013 11:11 am    Assunto: Responder com Citação

Então amigo.

Desculpe a demora, é que ontem foi um dia tenso!

Mas então....o código que você enviou não deu certo!

Pois em todas as validações da data ele fecha a tela. (não sei se coloquei no lugar certo).

Mas preciso, que se o usuário digitar a data inválida e der exit no campo de data, ele valida. Só não valida se clicar no botão de fechar(close).

Tem como saber o evento/componente que disparou o exit?

Grato,

Michael D. C. A.
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
Mostrar os tópicos anteriores:   
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Delphi Todos os horários são GMT - 3 Horas
Página 1 de 1

 
Ir para:  
Enviar Mensagens Novas: Proibido.
Responder Tópicos Proibido
Editar Mensagens: Proibido.
Excluir Mensagens: Proibido.
Votar em Enquetes: Proibido.


Powered by phpBB © 2001, 2005 phpBB Group
Traduzido por: Suporte phpBB