Fórum Como rodar o timer na condicao x #381834
20/07/2010
0
Carlos Faria
Curtir tópico
+ 0Posts
21/07/2010
Wesley Yamazack
O que esta ocorrendo é que você esta deixando seu Form que possui o Timer criado, não faça isso, crie o mesmo quando for utilizar.
Na hora que o Form for chamado coloque o seguinte Timer1.Active := True;,
Close do Form Timer1.Active := False;
EM modo de designer deixe seu timer com active = FAlse;
Ele só será ativado quando for chamado, sacou a idéia ?
Att,
Wesley Y
Gostei + 0
21/07/2010
Carlos Faria
Gostei + 0
21/07/2010
Wesley Yamazack
Seus forms trabalham com herança visual ?
Um abraço
Wesley Y
Gostei + 0
21/07/2010
Carlos Faria
Gostei + 0
22/07/2010
Wesley Yamazack
If formPrincipal.somenteeleaberto then timer1.enable = true else timer1.eneble := false ;
Fica mais elegante assim
Timer1.Enabled := formPrincipal.somenteeleaberto
Mas realmente não tenho como saber se isso irá lhe atender, pois já que você trabalha com vários forms diferentes, fica complicado de lhe ver uma solução. Mas tenta isso qualquer coisa estamos aqui.
Um abraço
Wesley Y
Gostei + 0
24/07/2010
Wesley Yamazack
Att,
Wesley Y
Gostei + 0
24/07/2010
Carlos Faria
Gostei + 0
24/07/2010
Wesley Yamazack
você que deu a idéia, achei que tivesse funcionado.
Realmente você vai ter que fazer isso em cada form. Pois já que você não tem herança visual, fica complicado de fazer isso.
De repente criar uma função em uma unit, para desativar o timer de todos os teus forms Tipo
procedure desativar;
begin
form1.timer1.enabled := false;
form2.timer1.enabled := false;
form3.timer1.enabled := false;
form4.timer1.enabled := false;
end;
Acho que isso irá ajudar na desativação.
Att,
Wesley Y
Gostei + 0
24/07/2010
Carlos Faria
Gostei + 0
24/07/2010
Wesley Yamazack
Um abraço
Wesley Y
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)