О Flash и не только
Как сделать клип интерактивным. События. Обработчики событий.
Другие статьи авторов
Игуана

Начинающим флэшерам и не только


Как сделать Flash клип интерактивным. События прослушиватели и обработчики событий в ActionScript3.

Как сделать Flash клип интерактивным. События, прослушиватели и обработчики событий в ActionScript3.

Сначала, создайте клип (фрагмент ролика) в библиотеке. В свойствах библиотечного символа задайте ему имя (я назвал его krug) и поставьте галочку напротив «Экспортировать для ActionScript». Выделите первый кадр временной линии и нажмите клавишу F9, чтобы попасть в редактор кода.
Под интерактивностью обычно подразумевается возможность взаимодействия пользователя с объектом (роликом). Как же это осуществить?
Для этого служат так называемые события и способность различных объектов их генерировать. Для примера, рассмотрим два события, генерируемые компьютерной мышью — onMOUSE_DOWN (левая кнопка вниз, то есть нажата) и onMOUSE_UP (кнопка вверх, то есть отпущена). Нашему ролику надо программно предписать выполнить что-то при возникновении этих событий. Как это сделать?
Допустим, нам нужно, чтобы какой либо визуальный объект можно было перетащить мышью. Для этого экземпляру этого объекта добавляется прослущиватель событий мыши onMOUSE_DOWN и onMOUSE_UP. Делается это так: имя_клипа_на_сцене.addEventListener(MouseEvent.MOUSE_DOWN, имя_функции_обработчика_события_без_круглых_скобок) для события onMOUSE_DOWN и имя_клипа_на_сцене.addEventListener(MouseEvent.MOUSE_UP, имя_другой_функции_обработчика_события).
Затем, необходимо написать эти функции-обработчики. В теле этих функций указываем то, что должно произойти (появление способности к перемещению мыщью). Для этого вызываем методы имя_клипа_на_сцене.startDrag() и имя_клипа_на_сцене.stopDrag(). Подробный листинг программы с коментариями смотрите ниже.

Вот что должно получиться.


Как видите, круги можно перетаскивать мышкой!

Евсеев Владимир, 08.02.2012

Поиск по сайту Карта сайта Главная О Flash и не только Как сделать клип интерактивным.