Знакомство с интегрированной средой разработки приложений C++ Builder

Страницы работы

Содержание работы

Лабораторная работа №1

Знакомство с интегрированной средой разработки приложений C++ Builder

В этой практической работе вам необходимо создать небольшую анимационную программу, которая даст вам возможность понять возможности визуального программирования и получить некоторые навыки работы с IDE C++ Builder.

1) После запуска Builder для вас будет открыт шаблон приложения Win32 из репозиторя шаблонов. Этот же шаблон вы можете получить, выбрав File->New. Откроется репозиторий проектов, из которого вы можете выбрать любой из существующих шаблонов (Application - приложение Win32, Console Application – консольное приложение).

2) Открывшийся шаблон, является готовой программой, которую можно запустить (F9), поэтому вам не следует изменять уже существующий программный код, а лишь добавить собственный.

3) Из палитры компонентов, страницы Standard, переместите на форму 4 кнопоки (Button). Со страницы System переместите на форму компонент Timer. Последним компонентом, который нам понадобиться является компонент Image, находящийся на странице Additional. Выделите последний компонент, в Инспекторе Объектов (Object  Inspector) появляться его свойства, среди них найдите свойство Picture. Нажав на кнопку, в поле этого свойства, вызовите диалог, из которого загрузите картинку; далее установите свойство AutoSize в True. На этом разработка интерфейса заканчивается и необходимо перейти к описанию взаимодействий между компонентами.

4) В раздел описания типов добавьте следующие строки:

enum TDirect {D_Up, D_Down, D_Right, D_Left};

 typedef Set <TDirect, D_Up, D_Left> Direct;

Первая строка описывает перечисление (enum), которое в следующей строке используется для описания множества. Это множество, которое будет определять направление движения картинки. Так как это всего лишь описание типов данных, то для того чтобы ввести в программу переменную, которая в данном случае будет являться множеством запишите:

Direct D;

5) Для того, чтобы проинициализировать эту переменную начальным значением сгенерируем событие FormCreate (перейдите на форму, в Object  Inspector должны отобразится её свойства, перейдите на закладку Events, с помощью двойного щелчка у события OnCreate вы создадите скелетик необходимой процедуры) того же эффекта можно достигнут дважды щёлкнув на форме. В созданную процедуру поместите следующую строку:

D.Clear();

6) Теперь нам необходимо заставить пчёлку двигаться по форме.

Для этого необходимо постоянно изменять координаты компонента Image. Найдите на форме компонент Timer и сгенерируйте единственное имеющееся у него событие. В полученную процедуру поместите следующую строку:

if (D.Contains(D_Up )) Image1->Top--;

Эта строка означает следующее: если множество направлений D содержит элемент D_up (т.е. вверх), то мы уменьшаем вертикальную координату картинки (координаты отсчитываются из левого верхнего угла). Изменение координат для остальных направлений записываются аналогично (горизонтальная координата - Image1->Left).

7) Изменение направлений движения будут производиться при помощи кнопок, от каждой из которых необходимо сгенерировать событие (OnClick). Для процедуры обработчика события изменяющего направление движения вверх следует записать следующие строки:

D >> D_Up;

D << D_Down;

По этим командам :из имеющегося множества исключается направление движения D_down (вниз) и добавляется D_up (вверх). Для остальных кнопок текст процедур пишется аналогично. В свойство Caption, каждой кнопки, впишите соответствующее ей действие.

Замечание: Если вы ошиблись и сгенерировали обработчик для другого события, то не стирайте его сами, просто удалите из него весь программный код (включая комментарии) и перекомпилируйте проект (CTR+F9).

8) Запишите проект (File->SaveProjectAs) и запустите (F9).

9) Теперь нужно заставить пчёлку не вылетать за пределы формы.

ClientHeight - высота формы

ClientWidth - ширина формы

Все координаты измеряются в пикселях.

Похожие материалы

Информация о работе