掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
負荷の少ないタイマー (ID:29121)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
連投になってしまいますが、昔CLXに付属してたstopwatchをみて作ってみました。 カウントアップ部分だけですがかなり簡単に実装できました。 deldelさん、KHE00221さん、改めてありがとう。 Timer1のIntervalは10にしておいてます。 …省略… type TForm1 = class(TForm) …省略… private FRunning: Boolean; procedure SetRunning(Value: Boolean); public StartTime: Extended; ElapsedTime: Extended; Reset: Boolean; property Running: Boolean read FRunning write SetRunning; end; …省略… procedure TForm1.SetRunning(Value: Boolean); begin if FRunning <> Value then begin FRunning := Value; StartTime := ElapsedTime; if Value then begin Reset := False; end; end; end; procedure TForm1.Timer1Timer(Sender: TObject); begin if Reset then ElapsedTime := Now else ElapsedTime := Now - StartTime; if Running then begin Label1.Caption := FormatDateTime('nn:ss.zzz', ElapsedTime); Self.Caption := Label1.Caption; end; end; procedure TForm1.Button1Click(Sender: TObject); begin Running := True; end; procedure TForm1.Button2Click(Sender: TObject); begin Running := not Running; end; procedure TForm1.Button3Click(Sender: TObject); begin if not Running then begin Label1.Caption := '00:00.000'; Self.Caption := Label1.Caption; Reset := True; end; end; procedure TForm1.FormCreate(Sender: TObject); begin Button3Click(nil); end;
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.