Desativar e Ativar Application.message?
Tem como desativar as mensgens de um form Application.message?
Delphi 2010.
Ricardo Tolentino
Curtidas 0
Respostas
Marco Salles
20/07/2011
e como vc as recebe ???
GOSTEI 0
Ricardo Tolentino
20/07/2011
Como assim?
Application.messagebox?
Warning?
Vou procurar no vb tem algo similar para explicar melhor.
GOSTEI 0
Ricardo Tolentino
20/07/2011
Existe um metodo que não sei o nome, quando eu executar o meu desativar as mensagens. no Final ativa as mensagens.
Begin
mensagens = false;
..
..
...
mensagens = true;
end;
Tentei assim só que ele exibe a mensagem.
Application.OnMessage := nil;
Application.MessageBox('a','b',0); no vc do Access tem este metodo.
DoCmd.SetWarnings False
DoCmd.OpenQuery "C_EXCLUI DATA PROGRAMADA", acViewNormal, acEdit
DoCmd.SetWarnings True
Application.OnMessage := nil;
Application.MessageBox('a','b',0); no vc do Access tem este metodo.
DoCmd.SetWarnings False
DoCmd.OpenQuery "C_EXCLUI DATA PROGRAMADA", acViewNormal, acEdit
DoCmd.SetWarnings True
GOSTEI 0
Marco Salles
20/07/2011
[QUOTE]Tentei assim só que ele exibe a mensagem.
Application.OnMessage := nil;
Application.MessageBox('a','b',0);[/QUOTE]
Mas ele exibe as mensagens onde ? Como ? Quando ???
Application.OnMessage := nil;
Application.MessageBox('a','b',0);[/QUOTE]
Mas ele exibe as mensagens onde ? Como ? Quando ???
GOSTEI 0
Ricardo Tolentino
20/07/2011
As mensagens são exibidas no on enter de um tedit. Tenho um evento que é disparado e que passa pelo tedit varias vezes.
Gostaria de desativar o primeiro evento enquando o segundo estiver executando. Acredito que não posso usar uma variavel global, pois os eventos são criados em tempo de execução.
E tem um terceiro evento que exibe uma mensagem tambem quando o botão é clicado e dependendo da situação exibe a mensagem. Gostaria de desativala tb.
Resumindo se fosse possivel destivar todas as mensagens enquando o segundo evento estiver processando, seria o idel.
Agradeço a ajuda.
GOSTEI 0
Marco Salles
20/07/2011
Para desativar vc tem que atribuir Nil ao manipulador de evento e depois retornar
Por exemplo a instrução abaixo
procedure TForm7.Button3Click(Sender: TObject);
begin
self.Button1.OnClick:=nil ; // desabilita o evento onclick do Button1
end;
procedure TForm7.Button4Click(Sender: TObject);
begin
Self.Button1.OnClick :=Self.Button1Click; // Retoma
end;
Agora para resolver o seu caso , mesmo que esses eventos sejam atribuidos em rumtime eles tem um
Ponteiro .. No caso acima Self.Button1Click é o ponteiro
dentro do onEnter vc tem que atrinuir nil a esses ponteiros que vc quer desativar e de acordo com a sua
lógica em momento oportuno Vincular novamente o manipulador do evento ao método correspondente
Mas é assim que se faz
Por exemplo a instrução abaixo
procedure TForm7.Button3Click(Sender: TObject);
begin
self.Button1.OnClick:=nil ; // desabilita o evento onclick do Button1
end;
procedure TForm7.Button4Click(Sender: TObject);
begin
Self.Button1.OnClick :=Self.Button1Click; // Retoma
end;
Agora para resolver o seu caso , mesmo que esses eventos sejam atribuidos em rumtime eles tem um
Ponteiro .. No caso acima Self.Button1Click é o ponteiro
dentro do onEnter vc tem que atrinuir nil a esses ponteiros que vc quer desativar e de acordo com a sua
lógica em momento oportuno Vincular novamente o manipulador do evento ao método correspondente
Mas é assim que se faz
GOSTEI 0
Ricardo Tolentino
20/07/2011
Funcionou. Obrigado pela dica.
GOSTEI 0