Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
СВП ЭДИК.docx
Скачиваний:
0
Добавлен:
01.03.2025
Размер:
73.15 Кб
Скачать

4.Блок-схема к программе

Заключение

В данной курсовой работе была выполнена поставленная задача - создание программы по теме разработать программу «Таймер.

Список литературы

1. Delphi-программирование: исходники и компоненты [Электронный ресурс], 2010, Режим доступа: http://www.delphisources.ru/

2. Флёнов М., Библия Delphi, 2-е изд. / СПб: БХВ-Петербург, 2008, 880 с.

3. Чеснокова О.В., Delphi 2007: Алгоритмы и программы. / М: НТ-пресс, 2008, 368 с. - ISBN 978-5-477-01130-8

4. Delphi: советы, примеры, решения [Электронный ресурс], 2007. Режим доступа: http://www.dimassoft2000.narod.ru/delphi.htm

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

{ Будильник. Модуль главной формы. }

unit Alarm2_1_;

interface

uses

Windows, Messages, SysUtils, Variants, Classes,

Graphics, Controls, Forms, Dialogs, StdCtrls,

ExtCtrls, ComCtrls,

DateUtils;

type

TForm1 = class(TForm)

Timer1: TTimer;

Label1: TLabel;

Label2: TLabel;

Label3: TLabel;

Label4: TLabel;

UpDown1: TUpDown;

Label5: TLabel;

UpDown2: TUpDown;

Shape1: TShape;

Label7: TLabel;

Button1: TButton;

Shape2: TShape;

Label8: TLabel;

Edit1: TEdit;

Label6: TLabel;

Label9: TLabel;

procedure FormCreate(Sender: TObject);

procedure Timer1Timer(Sender: TObject);

procedure UpDown1Click(Sender: TObject; Button: TUDBtnType);

procedure UpDown2Click(Sender: TObject; Button: TUDBtnType);

procedure Button1Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form1: TForm1;

implementation

uses Alarm2_2_;

{$R *.dfm}

var

Hour,Min: word; // время на индикаторе

AlHour, AlMin: word; // будильник установлен на AlHour:AlMin

// начало работы программы

procedure TForm1.FormCreate(Sender: TObject);

begin

Hour := HourOf(Now);

Min := MinuteOf(Now);

Label1.Caption := IntToStr(Hour);

if Min < 10

then Label2.Caption := '0'+IntToStr(Min)

else Label2.Caption := IntToStr(Min);

end;

// сигнал от таймера

procedure TForm1.Timer1Timer(Sender: TObject);

var

cHour,cMin: word;

begin

// получить текущее время

cHour := HourOf(Now);

cMin := MinuteOf(Now);

if Timer1.Tag = 0 // окно программы на экране

then begin

{ проверим, совпадает ли текущее время

с отображаемым на индикаторе }

if cHour <> Hour then

begin

Hour := cHour;

Label1.Caption := IntToStr(Hour);

end;

if cMin <> Min then

begin

Min := cMin;

if min <10

then Label2.Caption := '0' + IntToStr(Min)

else Label2.Caption := IntToStr(Min);

end;

// обеспечим мигание двоеточия

if Label3.Visible

then Label3.Visible := False

else label3.Visible := True;

end

else // окно программы скрыто, контролируем

// наступление момента подачи сигнала

if (cHour = AlHour) and (cMin = AlMin)

// сигнал !

then begin

Form2.Show;

Timer1.Tag := 0;

Timer1.Interval := 1000;

end;

end;

// щелчок на UpDown1 изменяет

// время сигнала будильника - часы

procedure TForm1.UpDown1Click(Sender: TObject; Button: TUDBtnType);

begin

if UpDown1.Position < 10

then Label4.Caption := '0' + IntToStr(UpDown1.Position)

else Label4.Caption := IntToStr(UpDown1.Position);

end;

// щелчок на UpDown2 изменяет

// время сигнала будильника - минуты

procedure TForm1.UpDown2Click(Sender: TObject; Button: TUDBtnType);

begin

if UpDown2.Position < 10

then Label5.Caption := '0' + IntToStr(UpDown2.Position)

else Label5.Caption := IntToStr(UpDown2.Position);

end;

// щелчок на кнопке OK

procedure TForm1.Button1Click(Sender: TObject);

begin

// установить будильник

AlHour := UpDown1.Position;

AlMin := UpDown2.Position;

Timer1.Tag := 1;

Form1.Hide; //

Timer1.Interval := 3000; // проверять каждые 3 секунды

end;

end.