
Мини-проекты в Delphi
Проект «Секундомер»
Данная программа является аналогом обычного секундомера с точностью до секунды. Для отсчета используется системное время. Создадим форму небольшого размера. Для нее можно задать BorderStyle – bsDialog для невозможности изменения размеров формы. На ней разместим 3 объекта TEdit и 3 кнопки TButton. Кнопка «Пуск» «запускает» секундомер, засекает время пуска и показывает его в первом окне. «Стоп»- «останавливает» его, показывает время остановки и интервал времени между пуском и остановкой. В формате времени (часы/минуты/секунды).
Так как в окно Edit может выводиться только текст, а время имеет другой тип, то потребуется преобразование типов – даты/времени в текст. В разделе private объявим переменные
t1,t2,t:TDateTime;
t1 – момент запуска секундомера, t2 – его остановка, t – измеряемый промежуток времени.
Итак, создаем процедуры обработки событий для кнопок:
procedure TForm1.Button1Click(Sender: TObject);
begin
t1:=time;
Edit1.Text:=TimeToStr(t1);
end;
Функция TimeToStr выполняет необходимое преобразование времен в текст.
procedure TForm1.Button2Click(Sender: TObject);
begin
t2:=time;
Edit2.Text:=TimeToStr(t2);
Edit3.Text:=TimeToStr(t2-t1);
end;
procedure TForm1.Button3Click(Sender: TObject);
begin
Edit1.Text:='';
Edit2.Text:='';
Edit3.Text:='';
end;
Третья процедура заносит в текстовые окна пустой текст.
Остается подумать над тем, чтобы программа работала корректней (например, если после «Очистить» кликнуть «Стоп» в двух окнах появляются числа!).
|