Часы-будильник-таймер-секундомер

Курсовой проект - Компьютеры, программирование

Другие курсовые по предмету Компьютеры, программирование

/p>

манипулятор мышь и клавиатура

объем дискового пространства 5 Мб

оперативная память 64 Мб и более.

 

4.3 Описание функционирования программы

 

Чтобы начать работу с программой, необходимо запустить файл Taim.exe.

Запуск программы сопровождается появлением диалогового главного окна:

 

 

Выбираем в этом окне мелодию, которая будет звучать в будильнике и таймере и жмем кнопку Открыть. Появится главная форма программы:

 

 

После этого для совершения каких-либо действий необходимо на главной форме нажать правой кнопкой мыши:

 

 

Затем можно выбрать соответствующие действия. Т.е. вызвать секундомер, таймер, будильник, перемещение формы с часами или завершить работу с программой и выйти.

Допустим, выбран секундомер, тогда появится следующее окно:

 

 

Нажав кнопку Показать, запустится секундомер. Остановить его можно нажав кнопку Стоп. Обнулить секундомер позволяет кнопка Остановить.

Допустим, выбран Таймер, тогда появится окно:

 

 

Таймер выставляется вручную и активизируется кнопкой Установить. После отсчета таймера запускается мелодия. Остановить таймер можно кнопкой Остановитью

Допустим, выбран будильник, тогда появится следующее окно:

 

 

Будильник устанавливается вручную. Запуск будильника осуществляется кнопкой Установить, чтобы сбросить будильник необходимо нажать кнопку Сбросить.

Допустим, выбрано перемещение, тогда появится окно:

 

 

Нажав соответствующие кнопки форма с часами переместится в указанные места.

 

5. Текст программы

Unit1;

 

, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,, XPMan, ExtCtrls, StdCtrls, Menus, ImgList;

= class(TForm): TLabel;: TTimer;: TTimer;: TTimer;: TXPManifest;: TImage;: TPopupMenu;: TMenuItem;: TMenuItem;: TMenuItem;: TMenuItem;: TMenuItem;: TEdit;: TEdit;: TEdit;: TEdit;: TEdit;: TEdit;: TTimer;FormCreate(Sender: TObject);Timer1Timer(Sender: TObject);N1Click(Sender: TObject);C1Click(Sender: TObject);N2Click(Sender: TObject);N3Click(Sender: TObject);N4Click(Sender: TObject);Timer2Timer(Sender: TObject);Timer3Timer(Sender: TObject);Timer4Timer(Sender: TObject);

{ Private declarations }

{ Public declarations };

: TForm1;: TDateTime;

hour, min, sec, msec: word; //для преобразования

sectime,sectime1:TDateTime;,msrealcount,msreal:integer;, m, s, ms,mks : word;, m1, s1, ms1: word;, m2, s2, ms2: integer;: boolean;

Unit2, Unit3, Unit4, Unit5;

{$R *.dfm}

 

TForm1.FormCreate(Sender: TObject);: Cardinal;:=True; .Timer2.Enabled:=true;:= CreateEllipticRgn(0,0,Width,Height);(Handle,hRgn,false);:= Time; // получаем время(Now,hour,min,sec,msec);:=hour*60*60*1000+min*60*1000+sec*1000+msec;.Image1.Picture.LoadFromFile(top15.bmp);

Label1.Caption := TimeToStr(Time) {ф-ция, кот возвращает текущее системное время}

end;

TForm1.Timer1Timer(Sender: TObject);.Caption := TimeToStr(Time) {ф-ция, кот возвращает текущее системное время};

TForm1.N1Click(Sender: TObject);.show;;TForm1.C1Click(Sender: TObject);.show;;

TForm1.N2Click(Sender: TObject);.Close;;

TForm1.N3Click(Sender: TObject);.show;;

TForm1.N4Click(Sender: TObject);.show;;

TForm1.Timer2Timer(Sender: TObject);:=time;(sectime1,h1,m1,s1,ms1);:=h1*60*60*1000+m1*60*1000+s1*1000+ms1;:=msrealcount-mscount;:=msreal mod (60*60*1000);:=msreal div (60*60*1000);:=m2 mod (60*1000);:=m2 div (60*1000);:=s2 mod 1000;:=s2 div 1000;.Edit1.Text:=inttostr(h2);.Edit2.Text:=inttostr(m2);.Edit3.Text:=inttostr(s2);.Edit4.Text:=inttostr(ms2);;

TForm1.Timer3Timer(Sender: TObject);:=time;(sectime1,h1,m1,s1,ms1);:=h1*60*60*1000+m1*60*1000+s1*1000+ms1;:=msrealcount-mscount;:=msreal mod (60*60*1000);:=msreal div (60*60*1000);:=m2 mod (60*1000);:=m2 div (60*1000);:=s2 mod 1000;:=s2 div 1000;:=ms2*2;.Edit5.Text:=Copy(IntToStr(mks),1,3);;

TForm1.Timer4Timer(Sender: TObject);:=time;(sectime1,h1,m1,s1,ms1);:=h1*60*60*1000+m1*60*1000+s1*1000+ms1;:=msrealcount-mscount;:=msreal mod (60*60*1000);:=msreal div (60*60*1000);:=m2 mod (60*1000);:=m2 div (60*1000);:=s2 mod 1000;:=s2 div 1000;:=ms2*3;.Edit6.Text:=Copy(IntToStr(mks),1,3);;

.

Unit2;

 

, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,, StdCtrls, ExtCtrls, MPlayer;

= class(TForm): TEdit;: TEdit;: TEdit;: TEdit;: TEdit;: TEdit;: TTimer;: TLabel;: TLabel;: TLabel;: TButton;: TButton;: TButton;: TTimer;: TTimer;Timer1Timer(Sender: TObject);Button1Click(Sender: TObject);Button3Click(Sender: TObject);Button2Click(Sender: TObject);FormCreate(Sender: TObject);Timer2Timer(Sender: TObject);Timer3Timer(Sender: TObject);

{ Private declarations }

{ Public declarations };

: TForm2;

 

,sectime1:TDateTime;,msrealcount,msreal:integer;, m, s, ms: word;, m1, s1, ms1: word;, m2, s2, ms2: integer;: boolean;

 

{$R *.dfm}

TForm2.Timer1Timer(Sender: TObject);:=time;(sectime1,h1,m1,s1,ms1);:=h1*60*60*1000+m1*60*1000+s1*1000+ms1;:=msrealcount-mscount;:=msreal mod (60*60*1000);:=msreal div (60*60*1000);:=m2 mod (60*1000);:=m2 div (60*1000);:=s2 mod 1000;:=s2 div 1000;.Edit1.Text:=inttostr(h2);.Edit2.Text:=inttostr(m2);.Edit3.Text:=inttostr(s2);.Edit4.Text:=inttostr(ms2);:=false;;

TForm2.Button1Click(Sender: TObject);.Edit1.Visible:=true;.Edit2.Visible:=true;.Edit3.Visible:=true;.Edit4.Visible:=true;.Edit5.Visible:=true;:=time;(sectime,h,m,s,ms);start then.Button1.caption:=Стоп;.Timer1.Enabled:=true ;.Timer2.Enabled:=true;.Timer3.Enabled:=true;:=h*60*60*1000+m*60*1000+s*1000+ms;.Button1.caption:=Старт;.Timer1.Enabled:=false;.Timer2.Enabled:=false;.Timer3.Enabled:=false;;:=True;;

TForm2.Button3Click(Sender: TObject);.Hide;;

TForm2.Button2Click(Sender: TObject);.Edit1.Text:=(0);.Edit2.Text:=(0);.Edit3.Text:=(0);.Edit4.Text:=(000);.Edit5.Text:=(000);.Edit6.Text:=(000);;

TForm2.FormCreate(Sender: TObject);.Timer1.Enabled:=false;.Timer2.Enabled:=false;.Timer3.Enabled:=false;;

TForm2.Timer2Timer(Sender: TObject);: integer;:=time;(sectime1,h1,m1,s1,ms1);:=h1*60*60*1000+m1*60*1000+s1*1000+ms1;:=msrealcount-mscount;:=msreal mod (60*60*1000);:=msreal div (60*60*1000);:=m2 mod (60*1000);:=m2 div (60*1000);:=s2 mod 1000;:=s2 div 1000;:=ms2*2;.Edit5.Text:=Copy(IntToStr(mks),1,3);:=false;;TForm2.Timer3Timer(Sender: TObject);mks:integer;:=time;(sectime1,h1,m1,s1,ms1);:=h1*60*60*1000+m1*60*1000+s1*1000+ms1;:=msrealcount-mscount;:=msreal mod (60*60*1000);:=msreal div (60*60*1000);:=m2 mod (60*1000);:=m2 div (60*1000);:=s2 mod 1000;:=s2 div 1000;:=ms2*3;.Edit6.Text:=Copy(IntToStr(mks),1,3);:=false;;:=True;.

Unit3;

 

, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,, StdCtrls, Buttons, MPlayer, ExtCtrls, XPMan;

= class(TForm): TTimer;: TMediaPlayer;: TBitBtn;: TBitBtn;: TBitBtn;: TEdit;: TEdit;: TEdit;: TLabel;: TLabel;: TLabel;: TXPManifest;: TOpenDialog;BitBtn3Click(Sender: TObject);BitBtn1Click(Sender: TObject);BitBtn2Click(Sender: TObject);Timer1Timer(Sender: TObject);FormCreate(Sender: TObject);

{ Private declarations }

{ Public declarations };

: TForm3;,sreal,taimer:longint;:Tdatetime;,m,s,ms,i:word;,m1,s1:longint;,TaimMin,TaimSec:word;:boolean;

 

Unit2;

 

{$R *.dfm}

TForm3.BitBtn3Click(Sender: TObject);.Close;;

TForm3.BitBtn1Click(Sender: TObject);:=StrToInt(edit1.Text);:=StrToInt(edit2.Text);:=StrToInt(edit3.Text);:=time;(timeTiam,h,m,s,ms);:=TaimHour*60*60+TaimMin*60+TaimSec+h*60*60+m*60+s;.Timer1.Enabled:=true;;

TForm3.BitBtn2Click(Sender: TObject);.Timer1.Enabled:=FALSE;.Edit1.Text:=0;.Edit2.Text:=0;.Edit3.Text:=0;.MediaPlayer1.Stop;;

=0thenform3.Edit3.Text:=inttostr(s1);((h1=0)and(s1=0)and(m1=0))then.MediaPlayer1.Enabled:=true;.MediaPlayer1.open;.MediaPlayer1.Play;;;TForm3.FormCreate(Sender:TObject);OpenDialog1.Exec