Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Примеры и задачи.doc
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
3.66 Mб
Скачать

Implementation

<$R *.dfm}

// отображает текущее время

procedure TForml.ShowTime;

var

Time: TDateTime; // текущее время

begin

Time := Now(); // получить системное время Label1.Caption := FormatDateTime('hh:mm:ss',Time),

end;

// обработка события Paint

procedure TForml.FormPaint(Sender: TObject);

begin

ShowTime; //отобразить часы end;

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

procedure TForml.TimerlTimer(Sender: TObject);

begin

// отобразить время

ShowTime;

end;

procedure TForml.FormCreate(Sender: TObject); begin

// настроить и запустить таймер

Timerl.Interval := 1000; // период сигналов таймера 1 с

Timerl.Enabled := True; // пуск таймера end;

end.

18. Напишите программу "Электронные часы", в окне которой отображается текущее время и дата (рис. 1.15).

Р ис. 1.15. В окне программы Электронные часы отображается текущее время и дата

unit eclock_2_; interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls, StdCtrls;

type

TForml = class(TForm)

Timerl: TTimer;

Label1: TLabel;

Label2: TLabel;

Shape1: TShape;

procedure FormPaint(Sender: TObject);

procedure TimerlTimer(Sender: TObject);

procedure FormCreate(Sender: TObject);

42

Часть

Примеры и задачи

43

// Объявление процедуры ShowTime

// помещено сюда вручную.

// Это сделано, чтобы функция имела

// доступ к компонентам формы напрямую

procedure ShowTime;

private

{ Private declarations ) public

{ Public declarations ) end;

var

Forml: TForml;

Implementation

($R *.dfm}

// отображает текущее время

procedure TForml.ShowTime;

var

Time: TDateTime; // текущее время

begin

Time := Now(); // получить системное время Labe11.Caption : = FormatDateTime('hh:mm:ss',Time);

end;

// обработка события Paint

procedure TForml.FormPaint(Sender: TObj ect);

begin

ShowTime; " // отобразить часы end;

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

procedure TForml.TimerlTimer(Sender: TObject);

begin

ShowTime; // отобразить время end;

procedure TForml.FormCreatetSender: TObject); begin

Labe12.Caption := FormatDateTime('dd.mm.yyyy',Now());

// настроить и запустить таймер

Timerl.Interval := 1000; //период сигналов таймера 1 с Timerl.Enabled := True; // пуск таймера

end;

end.

19. Напишите программу "Электронные часы", в окне которой отображается текущее время, дата и день недели (рис. 1.16).

Р ис. 1.16. В окне программы Электронные часы отображается текущее время, дата и день недели

unit eclock_3_; interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls, StdCtrls;

type

TForml = class(TForm) Timerl: TTimer; Label1: TLabel; // время

Label2: TLabel; // дата и день недели procedure FormPaint(Sender: TObject); procedure TimerlTimer(Sender: TObject); procedure FormCreate(Sender: TObject);

/ / Объявление процедуры ShowTime

// помещено сюда вручную.

// Это сделано, чтобы функция имела

// доступ к компонентам формы напрямую

procedure ShowTime;

44

Часть

Примеры и задачи

45

private

{ Private declarations } public

{ Public declarations } end;

var

Forml: TForml;

implementation

const

stDay : array[1..7] of string[ll] =

('воскресенье','понедельник','вторник', 1 среда','четверг','пятница', 'суббота');

stMonth : array[1..12] of string[8] = ('января','февраля','марта', 'апреля','мая','июня','июля', 'августа','сентября','октября', 'ноября','декабря');

{$R *.dfm}

// отображает текущее время

procedure TForml. ShowTime;

var

Time: TDateTime; // текущее время

begin

Time := Now(); // получить системное время Labell.Caption := FormatDateTime('hh:mm:ss',Time)

end;

// обработка события Paint

procedure TForml.FormPaint(Sender: TObject);

begin

ShowTime; // отобразить часы end;

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

procedure TForml.TimerlTimer(Sender: TObject);

begin

ShowTime; // отобразить время end;

// обработка события OnCreate

procedure TForml.FormCreate(Sender: TObject);

var

Present: TDateTime; // текущая дата и время Year, Month, Day : Word; // год, месяц и число, как

// отдельные числа begin

Present:= Now; // получить текущую дату

DecodeDate(Present, Year, Month, Day);

Label2.Caption := 'Сегодня '+IntToStr(Day)+ ' ' +

stMonth[Month] + ' '+ IntToStr(Year)+

1 года, '+ stDay[DayOfWeek(Present)];

// настроить и запустить таймер

Timer1.Interval := 1000; // период сигналов таймера 1 с

TimerI.Enabled := True; // пуск таймера end;

end.


Рис. 1.17. Форма и окна программы Таймер


20. Напишите программу "Таймер". На рис. 1.17 приведена форма и окна программы во время установки интервала и в процессе отсчета времени.

46