Fórum MessageDlg ficando atrás do form principal #10001

09/10/2009

0

Amigos,

Em alguns casos, não dá para precisar como e somente ocorre em dois micros.

A função MessageDlg não traz seu form para frente, ou seja, dá a impressão de que o micro travou, sendo que na verdade só está atrás do form principal.
O usuário tem que teclar Alt Tab para que o form da MessageDlg venha para frente.

Abaixo cito um exemplo do que tenho:

Procedure Concluido( Msg : String );
Begin
   MessageBeep( MB_ICONEXCLAMATION );
   MessageDlg( Msg,mtInformation,[ mbOk ],0 );
End;



...............
...............
Concluido( 'Operação concluída!' );


Conseguí me explicar? Como posso resolver?

Obrigado
Edson Santos

Edson Santos

Responder

Posts

09/10/2009

Wesley Yamazack

Olá meu caro,
  Infelizmente também tenho este problema(e nunca consegui resolver), isso ocorre no momento que teu sistema perde o foco no mesmo tempo que a mensagem é disparada, pode ser por intervenção de algum software, que no momento da mensagem ele disparada um evento ou algo do tipo, fazendo com que janela ativa perca o foco, e a mensagem fique por traz do form.

 Um abraço

Wesley Y
Responder

Gostei + 0

15/10/2009

Wesley Yamazack

Olá meu caro,
    Não fiquei satisfeito e andei procurando uma solução, veja se isso irá resolver teu problema.
    coloque o seguinte código na hora de exibir tua mensagem.

  SetForegroundWindow(Application.Handle);
  ShowMessage('Exibir mensagem');

Att,

Wesley Y
Responder

Gostei + 0

15/10/2009

Edson Santos

Ok

Vou testar.

Obrigado pela atenção.


Responder

Gostei + 0

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

Aceitar