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

Целью данной практической работы является ознакомление с объектом PictureBox (контейнер с изображением) для создания эффекта анимации.

Урок по созданию анимации с использованием элементов Visual c++ Timer и PictureBox

Разработайте приложение, в котором при нажатии на кнопку изображение будет перемещаться по экрану (например, по горизонтали)

Целью данной практической работы является ознакомление с объектом PictureBox (контейнер с изображением) для создания эффекта анимации.

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

объект свойство name
форма
контейнер для картинки (PictureBox) pct
кнопка (button) btnStart
кнопка (button) btnExit
таймер (timer) tmr

c++ создание анимацииВыполнение:
Для отображения в Visual c++ фото и изображений любого формата используется объект PictureBox.

  1. Создайте новый проект и расположите на новой форме элементы управления PictureBox (назовите его pct) и два элемента Button: btnStart и btnExit, как показано на рисунке. Создайте также объект Timer (tmr), который будет передвигать PictureBox через определенные промежутки времени.

Элемент управления Timer скрытый, он появляется ниже дизайна формы.

 

  1. В окне свойств объекта картинки выберите свойство Image и в открывшемся диалоговом окне выберите любой файл картинки.
  2. Для того чтобы PictureBox перемещался вправо, необходимо увеличивать его свойство Left – координату левого края. Поэтому запрограммируйте событие Tick объекта Timer следующим образом:
private: System::Void tmr_Tick() {
  this->pct->Left= this->pct->Left+20;
}
  1. Теперь необходимо запустить Таймер. Это можно сделать нажатием кнопки Старт. Поместите следующий код в обработку события Click кнопки Старт:
private: System::Void btnStart_Click() {
  this->tmr->Enabled=true; // запускаем таймер
  this -> tmr->Interval=50; // устанавливаем интервал таймера в 50 миллисекунд
}

Комментарии в C++ можно задавать после двойного символа слэш (//). Среда редактирования раскрасит их в зеленый цвет.

 

  1. Запустите и отладьте приложение. Сохраните его.
Дополнительное задание.

Измените приложение так, чтобы при первом нажатии на кнопку Старт графическое окно начинало двигаться, а при повторном – останавливалось. При этом должна меняться надпись на кнопке: Старт – при запуске, Стоп – при остановке.
Примечание: для реализации задачи понадобится оператор Visual c++ If

Вопросы для самоконтроля:

  1. Каково основное назначение элемента управления языка Visual c++ PictureBox?
  2. Для чего используется элемент управления Timer при создании анимации?
  3. Какое свойство PictureBox необходимо изменить для того, чтобы переместить этот элемент управления по вертикали?