Написал програмульку таймер.
В ней указывается время , через которое будет сигнал.
В качестве сигнала используется звуковой файл 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.