時計
Timerコンポーネントを使って簡単なディジタルクロックを作ってみます。アナログ時計は結構面倒ですが、ディジタルクロックは非常に簡単です。
Timerコンポーネントをフォームに貼りつけて、オブジェクトインスペクタでIntervalを変更しておきます。デフォルトでは1000となっています。これは一秒間隔(1000ミリ秒)でタイマーイベントが発生するということです。このままでもよいのですが、これだと最大1秒の誤差が発生するので、もっと小さな値のほうがよいと思います(ただし小さくしすぎても意味がないですが)。表示は、StaticTextを使って表示しています。StaticTextのBorderStyleはsbsSunkenにして枠を表示させました。
日付と時刻はNow関数で取得します。この関数は、TDateTime型(実数型と同じ)を返すので、これを文字列に変換するDateTimeToStr関数を使って、StaticTextのCaptionプロパティに代入しています。
ソース(青色部分がプログラムを記述した部分です)
unit Main;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, ExtCtrls;
type
TForm1 = class(TForm)
Timer1: TTimer;
stxTime: TStaticText;
procedure Timer1Timer(Sender: TObject);
private
{ Private 宣言 }
public
{ Public 宣言 }
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
procedure TForm1.Timer1Timer(Sender: TObject);
begin
stxTime.Caption := DateTimeToStr(Now);
end;
end.