VC++ № 7. Элемент управления Timer

Целью данного урока является ознакомление с объектом Visual c++ timer, рассмотрение его свойств и метода Tick.

Работа с элементом Timer в Visual c++

Разработайте приложение в Visual c++ «таймер» или «Секундомер«, которое при нажатии на кнопку начинает или приостанавливает отсчет времени в секундах

Целью данного урока является ознакомление с объектом Visual c++ timer, рассмотрение его свойств и метода Tick.

Инструментарий:

объект свойство name
форма
текстовое поле (textbox) txtSeconds
текстовое поле (textbox) txtMinutes
таймер (timer) tmrSecundomer
кнопка (button)

c++ работа с элементом timerВыполнение:

  1. Создайте на новой форме два текстовых окна: для секунд (txtSeconds) и минут (txtMinutes).
  2. Создайте элемент управления Timer (tmrSecundomer).

Этот элемент не отображается на форме, а потому размещается в нижней части экрана. Timer необходим, чтобы выполнять какие-либо действия через определенные промежутки времени, поэтому он невидим при работе приложения. Промежуток времени устанавливается свойством таймера Interval, которое измеряется в миллисекундах. Чтобы отсчитывать секунды необходимо установить значение 1000 для этого свойства.

  1. Установите значение 1000 для свойства Interval элемента Timer.
  2. Запрограммируйте событие Tick для таймера так, чтобы значение текстового окна секунд увеличивалось на единицу:
private: System::Void tmrSecundomer_Tick() {
 
int tmp= System::Int32::Parse(this->txtSeconds->Text);
 
tmp+=1;
 
this->txtSeconds->Text=tmp.ToString();
 
}

Событие Tick происходит по истечении времени в миллисекундах, указанного в свойстве Interval.

  1. Создайте и запрограммируйте кнопку, которая будет запускать или останавливать Ваш секундомер. Для запуска и остановки отсчета времени используйте тот факт, что изначально таймер заблокирован, т.е. его свойство Enabled равно false. Чтобы запустить таймер необходимо установить это свойство в значение true и наоборот.
  2. Запустите приложение. Щелкните по кнопке Старт и убедитесь, что значение окна секунд стало увеличиваться на единицу.
Дополнительное задание.

  1. Измените приложение так, чтобы время изменялось и в секундах и в минутах.
  2. Добавьте кнопку Сброс, при нажатии на которую время на секундомере обнулялось бы.
  3. Добавьте текстовое поле и найдите, как вывести в Visual c++ текущее время.
Вопросы для самоконтроля:

  1. Каково основное назначение элемента управления Timer в Visual c++?
  2. В каких единицах измеряется его свойство Interval?
  3. С помощью какого события элемента управления Timer можно выполнять действия через заданные промежутки времени?
  4. Каков стандартный префикс элемента управления Timer?
  5. С помощью какой команды можно задать генерирование события Tick элемента управления Timer через каждые 2 секунды?