Задание 4. Поместим на форму MyForm компоненты MyTimer, EditTimer, UpDownTime - связанный с компонентом EditTimer

Поместим на форму MyForm компоненты MyTimer, EditTimer, UpDownTime - связанный с компонентом EditTimer, LabelTime, Label1 - Caption = «Установка таймера», расположите его рядом с EditTimer, Label2 - Caption = «Текущее время», расположите его рядом с LableTime, MyProgressBar - отображает ход таймера, ButtonStart - для запуска таймера после его установки.

По истечению заданного времени появляется сообщение «Время вышло!». TMyForm *MyForm;

TProgressBar *MyProgressBar;

void__fastcall TMyForm::TMyForm(TComponent* Owner): Form(Owner)

{

MyProgressBar->Visible = false //до запуска таймера индикатор невидим

MyTimer->Enabled = false; //таймер еще не запущен

}

void __fastcall TMyForm::ButtonStartClick(TObject *Sender)

{

MyTimer->Enabled = true; //запуск таймера

MyProgressBar->Position = 0; //текущая позиция индикатора обнуляется

MyProgressBar->Max = UpDownTime->Position; //макс. Граница индикатора //соответствует заданному пользователем числу в EditTimer

MyProgressBar->Visible = true; //индикатор становится видимым

}

void __fastcall TMyForm::MyTimerTimer(TObject *Sender)

{

//отображение текущего времени в период работы таймера

LabelTime->Caption = Time().FormatString("tt");

//если текущая позиция индикатора меньше максимального значения

if(MyProgressBar->Position < MyProgressBar->Max)

{ MyProgressBar->Position++; //увеличиваем текущую позицию

if ((MyTimer->Enabled) & (StrToInt(EditTimer->Text)!=0))

//если таймер запущен и установлено его значение

EditTimer->Text=IntToStr(StrToInt(EditTimer->Text)-1);}//уменьшение времени

else //если время истекло

{ MyProgressBar->Visible =false;

MyTimer->Enabled = false;

ShowMessage("Время вышло!"); // вывод сообщения

LabelTime->Caption = "";} }

Контрольные вопросы

1. Для чего предназначен компонент Timer?

  1. Назовите основные свойства компонента Timer.
  2. Когда свойство компонента Timer Enabled устанавливается в true?
  3. В каких случаях испольхуется компонент Timer?

Практическая работа №16

Тема: «Применение панелей общего назначения в интерфейсе пользователя».

Цель работы: Научиться использовать панели общего назначения в приложениях C++ Builder.

Время выполнения: подготовка – 5 мин; выполнение – 165 мин.; проверка – 10 мин; всего – 180 мин.

Описание практической работы


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: