Problema num simples form de mensagem
Olá amigos, criei um form super simples, apenas com um label para apresentar uma mensagem ao usuário em processos demorados. Coloquei-o para criar automaticamente, e quando vou iniciar um processo chamo assim através uma função:
E após o processo, encerro-o assim:
O problema ocorre por exemplo, ao iniciar o sistema para iniciar a dll do cupom fiscal, como a mensagem, daí acesso qualquer form e quando saio dele me aparece sempre a tela de login, e o sistema está funcionando perfeitamente sem a mensagem. O interessante é que o form de login é criado em runtime e destruído logo após, como mostro abaixo o evento activate do form principal.
Esta é a função ativar ECF:
Se retiro da procedure ECF_Ativar as chamadas as funções AbreMensagem e FechaMensagem, tudo funciona perfeitamente.
Espero que possam me auxiliar
Um abraço
procedure TfMenu.AbreMensagem(vTit,vLab: string); begin fMensagem.Caption := vTit; fMensagem.LabMensagem.Caption := vLab; fMensagem.Update ; fMensagem.Show; end;
E após o processo, encerro-o assim:
procedure TfMenu.FechaMensagem; begin fMensagem.Close ; end;
O problema ocorre por exemplo, ao iniciar o sistema para iniciar a dll do cupom fiscal, como a mensagem, daí acesso qualquer form e quando saio dele me aparece sempre a tela de login, e o sistema está funcionando perfeitamente sem a mensagem. O interessante é que o form de login é criado em runtime e destruído logo após, como mostro abaixo o evento activate do form principal.
try Application.CreateForm(TfLogin, fLogin); fLogin.ShowModal; if fLogin.BotaoOk.ModalResult <> mrOk then begin DM.Conexao.Connected := False; Application.Terminate ; end; finally; fLogin.Release; end; ECF_Ativar;
Esta é a função ativar ECF:
procedure ECF_Ativar; begin if fMenu.Terminal[1] <> ´0´ then begin fMenu.AbreMensagem(´Aguarde´,´Inicializando ECF...´); if fMenu.Terminal[1] <> ´1´ then ECF_Retorno(InicializaDLL(fMenu.Terminal[1])); fMenu.FechaMensagem ; end; end;
Se retiro da procedure ECF_Ativar as chamadas as funções AbreMensagem e FechaMensagem, tudo funciona perfeitamente.
Espero que possam me auxiliar
Um abraço
Aldus
Curtidas 0
Respostas
Kapak
15/07/2005
O evento onActivate pode ocorrer várias vezes na sua aplicação. Será que o problema não é esse ?
GOSTEI 0
Aldus
15/07/2005
Bingo kapak, obrigado pela ajuda, era somente isso, mudei as instruções do onActivate para o onshow e está ok.
Bom fim de semana
Até
Bom fim de semana
Até
GOSTEI 0
Aldus
15/07/2005
Bingo kapak, obrigado pela ajuda, era somente isso, mudei as instruções do onActivate para o onshow e está ok.
Bom fim de semana
Até
Bom fim de semana
Até
GOSTEI 0