Jump to content
Fórum Script Brasil
  • 0

Problema com TTimer


Eder

Question

Ola..pessoal..tou com um probleminha muito chato..já não sei mais o que pensar...

Tenho um TTimer1 que esta Enabled=True com tempo de 60 segundosnele no onClick esta:

Application Terminate;
e Tenho um Botão onde esta assim no OnClick
Timer1.Enabled:=False;

Explicando:

se eu não clickar no botão em 60 segundos...o programa fecha, e se eu clickar no botão então desabilita o Timer1

Porem não funciona...eu clicko no Botão..e ele não desabilita o Timer1

Eu nunca vi isto......ele não obedece.

Tem algum codigo que eu posso desabilitar este Timer??

Grato

Link to comment
Share on other sites

4 answers to this question

Recommended Posts

  • 0

Oi Eder .... veja se o seu codigo esta como este ... fiz do jeito que voce falou e funciona perfeitamente

unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  ExtCtrls, StdCtrls;

type
  TForm1 = class(TForm)
    Button1: TButton;
    Timer1: TTimer;
    procedure Button1Click(Sender: TObject);
    procedure Timer1Timer(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.Button1Click(Sender: TObject);
begin
   Timer1.Enabled := false;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
   // interval do timer = 600000   > 60 segundos
   Application.Terminate;
end;

end.

abraço

Link to comment
Share on other sites

  • 0

// interval do timer = 600000   > 60 segundos
R.: oba....aqui acho que você se enganou é 60000 (60 segundos né?) a cada 1000 equivale a 1 segundo né? BELEZA..mas vamos lá.. Jonas...nunca via algo assim...já procurei no codigo todo do form e não achei o problema... veja o exemplo é igual a este que vou passar abaixo: //este timer coloquei ligado pra 3000(3 segundos)
procedure TForm1.Timer1Timer(Sender: TObject);
begin
    SHOWMESSAGE('LIGADO');
end;
//este desabilita
procedure TForm1.Button1Click(Sender: TObject);
begin
   TIMER1.Enabled:=FALSE;
end;
este exemplinho acima funciona legal.......é lógica....se ta ligado aperto o botao e ele desliga....mas no meu programa oficial...ele não desativa.....
TIMER1.Enabled:=FALSE;

ou seja é como se eu não clickasse neste codigo acima...

já troquei de nome dos componentes timer´s, pois pensei que alguém form tinha numo parecido e taria puxando....

já não sei mais o que fazer....

pela logica e pelo exemplinho que mostrei acima deveria funcionar!!

Grato

Link to comment
Share on other sites

  • 0

realmente 60000 = 60 seg ... coloquei um zero a mais ..rs

Obs: tirar o showmessage de dentro do timer ( pois ao ser ativada a menssagem o timer para )

abra uma nova aplicação e faça como esta no meu codigo ... não tem erro ... funciona perfeitamente

abraço

Edited by Jhonas
Link to comment
Share on other sites

  • 0
Obs: tirar o showmessage de dentro do timer ( pois ao ser ativada a menssagem o timer para )
R.: Ok..

abra uma nova aplicação e faça como esta no meu codigo ... não tem erro ... funciona perfeitamente

R.: sim..o seu funciona...e aquele exemplinho com showmessage também funciona...

Só no meu programa oficial....que não funca....deve ter algo la no programa que não deixa funcionar...mas já revirei o codigo e não tem nada....

mas beleza.....vou arrumar alguma maneira de não usar o componente Ttimer nesta aplicação.

valeu...muito grato

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      152k
    • Total Posts
      651.6k
×
×
  • Create New...