Adobe Flash | ActionScript: Перетаскивание (Drag and drop) объектов мышью

В этом уроке будут рассмотрены основы технологии «Drag and drop» («перетащи-и-брось» или перетаскивание объектов) для Adobe Flash CS5, и примеры реализации этого эффекта в ActionScript 3.0. Вы узнаете, как реализовать перетаскивание объекта по сцене программно в ActionScript 3.0. В примере будет использовано изображение овцы в качестве демонстрационного объекта для реализации механизма «Drag and drop» .

изображение для реализации drag and drop в ActionScript 3.0

Шаг первый — Создаем объект для того, чтобы запрограммировать перетаскивание

Откройте Adobe Flash и создайте новый документ, разместите на сцене любой объект.

создаем документ ActionScript 3.0

В качестве альтернативы вы можете использовать изображение в виде объекта, как и в примере. Для этого в главном меню перейдите File -> Import to stage, затем выберите файл изображения и нажмите на него.

Шаг второй — Преобразование объекта в символ

Выделите объект и нажмите правую кнопку мыши, в контекстом выберите «Convert To Symbol» , или нажмите F8.

переводим объект в символ при помощи команды Convert to Symbol

Дайте объекту какое-нибудь имя, отметьте, что символ имеет тип «Movie Clip» и нажмите OK.

создаем документ ActionScript 3.0

Используя инструмент «Selection Tool» выделите объект и введите в поле «Instance name» имя объекта «sheep_mc» .

создаем документ ActionScript 3.0

Шаг третий — Добавление кода

Нажмите на изображение стрелочки создаем документ ActionScript 3.0в верхней панели справа и добавьте следующий код:

sheep_mc.addEventListener(MouseEvent.MOUSE_DOWN, drag);
sheep_mc.addEventListener(MouseEvent.MOUSE_UP, drop);

function drag(event:MouseEvent):void {
  sheep_mc.startDrag();
}

function drop(event:MouseEvent):void {
  sheep_mc.stopDrag();
}

В первой и во второй строке кода добавляются прослушиватели событий (EventListeners) для событий «mouse up» (кнопка мыши отжата) и «mouse down» (кнопка мыши нажата) с параметрами перетаскивания (drag and drop).

Функция drag начинает перетаскивать объект, когда зажата кнопка мыши, а функция drop останавливает перетаскивание объекта, если кнопка мыши была отжата.

Функции перетаскивания (drag and drop) также могут быть адаптированы для многократного использования.

Шаг четвертый — Проверьте приложение

Нажмите ctrl + Enter и проверьте, что получилось. Теперь при помощи мыши попробуйте перетащить овцу по экрану.

Теперь вы умеете реализовывать перетаскивание в Adobe Flash при помощи ActionScript 3.0. Исходники примера вы можете скачать здесь.

В следующем уроке рассмотрим перетаскивание нескольких объектов на сцене.

Комментировать

Почта не публикуется.Обязательные поля отмечены *