Fórum WM_TIMER, WM_TIMECHANGE será que alguém pode me ajudar??? #184832
29/09/2003
0
Bom dia pessoal :D !!!!!
Estava procurando mensagens do windows para substituir o componente Timer. Sei que quando o usuário muda a hora do sistema o windows manda a mensagem WM_TIMECHANGE. O que eu queria saber é se existe uma forma de eu, por exemplo, colocar um pequeno relógio na minha aplicação sem usar o componente timer e sim escrevendo um procedimento e tratando uma mensagem do Windows que seja disparada no evento do relógio. Procurei no help do windows e encontrei a mensagen WM_TIMER só que não consegui faze-la funcionar. Será que alguém pode me ajudar a encontrar a mensagem correta e como implementa-la, de forma a poder ter a funcionalidade do componente Timer mas utilizando procedures de tratamento de mensagens? Desde já fico grato a quem me ajudar!!! Obrigado pela ajuda !!!!!
Estava procurando mensagens do windows para substituir o componente Timer. Sei que quando o usuário muda a hora do sistema o windows manda a mensagem WM_TIMECHANGE. O que eu queria saber é se existe uma forma de eu, por exemplo, colocar um pequeno relógio na minha aplicação sem usar o componente timer e sim escrevendo um procedimento e tratando uma mensagem do Windows que seja disparada no evento do relógio. Procurei no help do windows e encontrei a mensagen WM_TIMER só que não consegui faze-la funcionar. Será que alguém pode me ajudar a encontrar a mensagem correta e como implementa-la, de forma a poder ter a funcionalidade do componente Timer mas utilizando procedures de tratamento de mensagens? Desde já fico grato a quem me ajudar!!! Obrigado pela ajuda !!!!!
Ulbj05
Curtir tópico
+ 0
Responder
Posts
20/08/2013
Sysmo Ltda
Tente utilizar o SentTimer e KillTimer.
Existem diversos exemplos na internet.
Existem diversos exemplos na internet.
Responder
Gostei + 0
20/08/2013
Sysmo Ltda
Segue EX.:
Vai precisar declarar um procedimento semelhante a este:
procedure WMTimer(var Message: TMessage); message WM_TIMER;
Programe o seu timer.
procedure TfrmPopup.WMTimer(var Message: TMessage);
begin
KillTimer(Handle, 1);
Close;
end;
Dispara o seu timer.
SetTimer(Handle, 1, 600, nil);
Vai precisar declarar um procedimento semelhante a este:
procedure WMTimer(var Message: TMessage); message WM_TIMER;
Programe o seu timer.
procedure TfrmPopup.WMTimer(var Message: TMessage);
begin
KillTimer(Handle, 1);
Close;
end;
Dispara o seu timer.
SetTimer(Handle, 1, 600, nil);
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)