Files
lazarus-ccr/components/rx/trunk/demos/RxContols/RxClock/unit1.pas

79 lines
1.4 KiB
ObjectPascal
Raw Normal View History

unit Unit1;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils, Forms, Controls, Graphics, Dialogs, StdCtrls, Spin,
rxclock;
type
{ TForm1 }
TForm1 = class(TForm)
CheckBox1: TCheckBox;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
RxClock1: TRxClock;
SpinEdit1: TSpinEdit;
SpinEdit2: TSpinEdit;
SpinEdit3: TSpinEdit;
procedure CheckBox1Change(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure RxClock1Alarm(Sender: TObject);
private
public
end;
var
Form1: TForm1;
implementation
{$R *.lfm}
{ TForm1 }
procedure TForm1.RxClock1Alarm(Sender: TObject);
begin
ShowMessage('Alarm!');
CheckBox1.Checked:=false;
end;
procedure TForm1.CheckBox1Change(Sender: TObject);
begin
RxClock1.AlarmEnabled:=CheckBox1.Checked;
if CheckBox1.Checked then
begin
RxClock1.AlarmHour:=SpinEdit1.Value;
RxClock1.AlarmMinute:=SpinEdit2.Value;
RxClock1.AlarmSecond:=SpinEdit3.Value;
end;
SpinEdit1.Enabled:=not CheckBox1.Checked;
SpinEdit2.Enabled:=SpinEdit1.Enabled;
SpinEdit3.Enabled:=SpinEdit1.Enabled;
Label2.Enabled:=SpinEdit1.Enabled;
Label3.Enabled:=SpinEdit1.Enabled;
Label4.Enabled:=SpinEdit1.Enabled;
end;
procedure TForm1.FormCreate(Sender: TObject);
var
H, M, S, MS: word;
begin
DecodeTime(Now, H, M, S, MS);
SpinEdit1.Value:=H;
SpinEdit2.Value:=M;
end;
end.