Написал програмульку таймер.
В ней указывается время , через которое будет сигнал.
В качестве сигнала используется звуковой файл 023243.wav
Есть возможность выбора в минутах и секундах.
Пока таймер включён горит красная надпись.
Код:
unit Unit1;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils, FileUtil, Forms, Controls, Graphics, mmsystem, Dialogs,
ExtCtrls, StdCtrls;
type
{ TForm1 }
TForm1 = class(TForm)
Button1: TButton;
Edit1: TEdit;
Label1: TLabel;
Label2: TLabel;
RadioButton1: TRadioButton;
RadioButton2: TRadioButton;
RadioGroup1: TRadioGroup;
Timer1: TTimer;
procedure Button1Click(Sender: TObject);
procedure Edit1KeyPress(Sender: TObject; var Key: char);
procedure FormActivate(Sender: TObject);
procedure RadioButton1Change(Sender: TObject);
procedure RadioButton2Change(Sender: TObject);
procedure Timer1Timer(Sender: TObject);
private
public
end;
var
Form1: TForm1;
tgl: Integer;
aaa: Integer;
implementation
{$R *.lfm}
{ TForm1 }
procedure TForm1.Button1Click(Sender: TObject);
begin
if(Edit1.Text = '') then Edit1.Text := '0';
if(RadioButton1.Checked = True)then
tgl := StrtoInt(Edit1.Text)* 60;
if(RadioButton2.Checked = True)then
tgl := StrtoInt(Edit1.Text);
aaa:= 0;
Label2.Visible:= True;
Timer1.Enabled:= True;
end;
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: char);
begin
if not (Key in ['0'..'9']) then Key := #0;
end;
procedure TForm1.FormActivate(Sender: TObject);
begin
RadioButton1.Checked := True;
tgl:= 0;
aaa:= 0;
Timer1.Enabled:= False;
Label2.Visible:= False;
end;
procedure TForm1.RadioButton1Change(Sender: TObject);
begin
Label1.Caption:= 'min';
end;
procedure TForm1.RadioButton2Change(Sender: TObject);
begin
Label1.Caption:= 'sec';
end;
procedure TForm1.Timer1Timer(Sender: TObject);
begin
if (aaa = tgl) then
begin
PlaySound(PChar('023243.wav'),0,SND_FILENAME+SND_ASYNC );
Label2.Visible:= False;
Timer1.Enabled:= False;
end;
aaa:=aaa+1;
end;
end.

