線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1689
推到 Plurk!
推到 Facebook!

Timer 計時中重新啟用,是否會重新計數?

尚未結案
kan0515
中階會員


發表:56
回覆:120
積分:50
註冊:2002-06-24

發送簡訊給我
#1 引用回覆 回覆 發表時間:2002-08-13 19:03:49 IP:211.23.xxx.xxx 未訂閱
請問一下,若在程式中設timer1.enabled=true之後 若timer1尚未倒數完,再設一次timer1.Enabled=True 是否會造成重新計數呢? 發表人 - ddy 於 2002/11/28 14:26:43
阿子
站務副站長


發表:120
回覆:230
積分:201
註冊:2002-03-18

發送簡訊給我
#2 引用回覆 回覆 發表時間:2002-08-13 19:15:55 IP:61.221.xxx.xxx 未訂閱
不會,您可以查看timer1.enabled 的原始碼可以找到一段是在SetEnabled中可以看到
procedure TTimer.SetEnabled(Value: Boolean);
begin
  if Value <> FEnabled then 
  begin
    FEnabled := Value;
    UpdateTimer;
  end;
end;
所以當您的 timer1.enabled 已經為True時它不是不會任何改變也就是說時間是不會重新計算的。 從思考取勝一切~q
------
從思考取勝一切~q
china20
一般會員


發表:1
回覆:19
積分:4
註冊:2002-04-15

發送簡訊給我
#3 引用回覆 回覆 發表時間:2002-08-14 09:07:15 IP:211.23.xxx.xxx 未訂閱
那是不是中斷再重設 enabled = ture 就可以了呢?
ddy
站務副站長


發表:262
回覆:2105
積分:1169
註冊:2002-07-13

發送簡訊給我
#4 引用回覆 回覆 發表時間:2002-08-14 09:22:38 IP:210.64.xxx.xxx 未訂閱
沒錯,可從下列範例得知,當button2按下時,Timer停止,button1按下時Timer繼續重作,不會重新開始
var
    i:Integer;
procedure TForm1.Timer1Timer(Sender: TObject);
begin
    i:=i 1;
    Self.Caption :=IntToStr(i);
end;    procedure TForm1.FormCreate(Sender: TObject);
begin
    i:=0;
end;    procedure TForm1.Button1Click(Sender: TObject);
begin
    Timer1.Enabled :=True;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
    Timer1.Enabled :=False;
end;    
噓~~~~~~沉思中…
kan0515
中階會員


發表:56
回覆:120
積分:50
註冊:2002-06-24

發送簡訊給我
#5 引用回覆 回覆 發表時間:2002-08-14 10:14:09 IP:211.23.xxx.xxx 未訂閱
SO...了解 謝謝~~~^__^
系統時間:2024-04-25 23:40:27
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!