Fórum Fechar uma MessageDlg com timer #277388
15/04/2005
0
Olá comunidade,
Estou trabalhando em um sistema que faz atualização pela internet. O Usuário pode programar e deixar a atualização no automático também.
Foi feito um tratamento de erro que indique a resposta do servidor de arquivos na internet caso a conexão tenha problemas. São feitas 4 tentativas ao todo, existem dois servidores, se falhar uma conexão é tentada com o outro se falhar tenta novamente e assim por diante.
A rotina funciona legal. Se o usuário estiver fazendo a atualização e aparecer a mensagem ele clique em OK e daí prossegue. O problema é se estiver no automático a MESSAGEDLG SÓ FECHAR SE CLICAR EM OK.
Gostaria que alguém me ajudasse. A mensagem deve aparecer indicando o problema com a conexão, mas se o usuário não estiver presente que a janela se feche depois de um tempo por exemplo 10 segundos.
Grato,
mazeu :roll:
Estou trabalhando em um sistema que faz atualização pela internet. O Usuário pode programar e deixar a atualização no automático também.
Foi feito um tratamento de erro que indique a resposta do servidor de arquivos na internet caso a conexão tenha problemas. São feitas 4 tentativas ao todo, existem dois servidores, se falhar uma conexão é tentada com o outro se falhar tenta novamente e assim por diante.
A rotina funciona legal. Se o usuário estiver fazendo a atualização e aparecer a mensagem ele clique em OK e daí prossegue. O problema é se estiver no automático a MESSAGEDLG SÓ FECHAR SE CLICAR EM OK.
Gostaria que alguém me ajudasse. A mensagem deve aparecer indicando o problema com a conexão, mas se o usuário não estiver presente que a janela se feche depois de um tempo por exemplo 10 segundos.
Grato,
mazeu :roll:
Mazeu
Curtir tópico
+ 0
Responder
Posts
15/04/2005
Hjpezzo
Um processo interessante seria ao invés de utilizar-se do MessageDlg, você poderia montar um form com o texto que você precisa e um botão para que seja fechado pelo usuário.
Na sua rotina principal, ao invés de chamar o MessagDlg, você faria mais ou menos o seguinte:
frmMensagem := TfrmMensagem.Create(Self);
tmrTempo.Enabled := True;
frmMensagem.Show;
e no evento onTimer, poderia colocar
frmMensagem.Close;
tmrTempo.Enabled := False;
Isso deve resolver sua situação..
Desculpe o exemplo ruim, mas estou meio corrido..
Abraço
Na sua rotina principal, ao invés de chamar o MessagDlg, você faria mais ou menos o seguinte:
frmMensagem := TfrmMensagem.Create(Self);
tmrTempo.Enabled := True;
frmMensagem.Show;
e no evento onTimer, poderia colocar
frmMensagem.Close;
tmrTempo.Enabled := False;
Isso deve resolver sua situação..
Desculpe o exemplo ruim, mas estou meio corrido..
Abraço
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)