Интерфейс панели Actions
Как было сказано в начале, панель Actions обеспечивает два режима работы. В обычном режиме (Normal Mode) описание действий выполняется путем заполнения соответствующих полей параметров. В экспертном режиме (Expert Mode) вы можете записывать и корректировать действия непосредственно в окне сценария, работая в нем как в обычном текстовом редакторе. По умолчанию при первом обращении к панели установлен режим Normal Mode.
Вызов панели Actions.Существует несколько способов вызова на экран панели Actions. Однако наиболее надежный и корректный способ состоит в том, чтобы вызывать панель «от имени» того элемента фильма, для которого вы собираетесь создать сценарий. Чтобы открыть панель Actions для создания сценария кадра, необходимо щелкнуть правой кнопкой мыши на временной диаграмме в ячейке соответствующего ключевого кадра и в контекстном меню выбрать команду Actions. После того, как панель появится на экране, убедитесь, что создаваемый сценарий будет связан именно с тем кадром, с которым требуется. Для этого достаточно взглянуть на заголовок панели и расположенный под ним список.
Чтобы открыть панель Actions для создания сценария, связанного с кнопкой или с клипом, необходимо:
1. Выбрать соответствующий объект на столе.
2. Открыть панель инспектора свойств.
3. Щелкнуть кнопку Edit the action script (Редактировать сценарий действий), расположенную возле правой границы панели инспектора свойств. Кнопка имеет белый цвет, если сценарий для данного объекта отсутствует, после создания сценария она меняет цвет на синий.
При вызове панели Actions для кнопки или клипа в ее заголовке отображается соответствующая информация.
Сценарий может быть сопоставлен только конкретному экземпляру кнопки или клипа, помещенному на стол, но не собственно символу, хранящемуся в библиотеке. Назначение сценария экземпляру кнопки или клипа не влияет на свойства других экземпляров.
После открытия панели можно выбрать режим работы. Выбор режима выполняется с помощью соответствующих команд меню View Options (Настройка формата), которое открывается щелчком на одноименной кнопке панели.
Независимо от выбранного режима, панель содержит следующие основные элементы интерфейса:
• раскрывающийся список сценариев фильма, который обеспечивает быстрый переход к другому сценарию без необходимости выбора на столе объекта, с которым связан этот сценарий;
• кнопка Script Pin (Прикрепить сценарий) позволяет зафиксировать текущий сценарий, то есть содержимое панели зависит от выбранного на столе объекта фильма. После фиксации сценария можно выбрать на столе другой объект, и содержимое панели при этом не изменится;
• кнопка в виде книжки обеспечивает вызов встроенной справочной системы по языку ActionScript;
• панель Action Toolbox (Комплект инструментов для действий), где каждый элемент соответствует определенной конструкции языка ActionScript; двойной щелчок на значке элемента обеспечивает его вставку в текст сценария;
• окно сценария, в котором отображается текст сценария. При работе в режиме Expert Mode в этом окне можно работать как в обычном текстовом редакторе;
• панель инструментов окна сценария. Размещенные на ней кнопки повышают удобство работы с текстом сценария;
• строка состояния предназначена для вывода дополнительной информации относительно компонентов, включенных в сценарий, также в строке состояния выводится краткое сообщение об ошибке.
Список Action Toolbox содержит перечень следующих компонентов языка ActionScript, которые могут быть использованы при создании сценария:
• Actions (Действия) - процедуры языка ActionScript, имеющие «универсальный» характер, то есть не зависящие от особенностей класса объектов (в отличие от методов объектов, принадлежащих конкретному классу). В данную категорию входят традиционные для большинства языков программирования высокого уровня операторы логического управления (проверки логических условий, организации цикла и т. п.);
• Operators (Операторы) - операторы логических и арифметических операций (сложение, вычитание, сравнение и т. п.);
• Functions (Функции) - предопределенные (библиотечные) функции (например, в их число входит функция проверки номера версии Flash-плеера);
• Properties (Свойства) - свойства объектов, не зависящие от класса (например, уровень прозрачности изображения);
• Objects (Объекты) - предопределенные объекты, которые могут быть использованы в сценарии (например, существует объект для работы с датой и временем), а также в этот же раздел включаются пользовательские классы объектов;
• Deprecated (Осуждаемые) - конструкции, которые не рекомендуется использовать в сценариях (как устаревшие);
• Flash UI Components (Компоненты пользовательского интерфейса). Кроме перечисленных разделов, в списке Action Toolbox имеется также раздел Index, который содержит алфавитный перечень всех компонентов языка.
Режим Normal Mode.Область ввода параметров предназначена для указания параметров, необходимых для корректного выполнения конструкции, помещенной в текст сценария. Формат области зависит от синтаксиса конструкции, выбранной (выделенной) в тексте сценария. Некоторые конструкции вообще не имеют параметров.
В этом случае область ввода параметров пуста.
На панели инструментов окна сценария имеются следующие кнопки:
• кнопка Add new item (Добавить новый элемент), помеченная символом «+», обеспечивает вызов системы каскадных меню, отражающих иерархию компонентов языка ActionScript. Выбор пункта меню самого нижнего уровня обеспечивает вставку в сценарий соответствующего компонента;
• кнопка, помеченная символом «-», обеспечивает удаление из текста сценария, выбранного в окне компонента;
• кнопка Find (Поиск) вызывает на экран диалоговое окно, в котором можно ввести искомую последовательность символов;
• кнопка Replace (Замена) позволяет открыть диалоговое окно для установки параметров замены строки (последовательности символов);
• кнопка Insert a target path (Добавить путь назначения) обеспечивает вывод на экран диалогового окна, с помощью которого можно описать путь назначения для адресации необходимого элемента фильма. Данная кнопка становится доступна в том случае, если в окне сценария выбран компонент, в котором предполагается использование пути назначения, и если фокус ввода установлен в соответствующем поле окна установки параметров;
• кнопка Debug Options (Параметры отладки) открывает меню, содержащее команды, с помощью которых выполняется расстановка и удаление контрольных точек (или точек прерывания Breakpoints). Использование контрольных точек позволяет проследить выполнение сценария по шагам, величина которых определяется расстоянием между точками (числом строк сценария между точками);
• кнопки, обозначенные стрелками, позволяют перемещать компоненты сценария относительно друг друга (если компонент состоит, например, из трех строк, то одним щелчком перемещаются все три строки).
Одним из важнейших достоинств режима Normal Mode является то, что он позволяет добавлять в сценарий предопределенные действия из раздела Actions, не прибегая к ручному программированию. Всего таких действий более десятка:
• Go To - переход к заданному кадру или сцене;
• Play и Stop - соответственно запуск и остановка воспроизведения фильма;
• Toggle High Quality - управление качеством воспроизведения фильма;
• Stop All Sounds - выключение звукового сопровождения;
• Q Get URL - переход по заданному URL;
• FSCommand - управление Flash-плеером в процессе воспроизведения фильма;
• Load Movie и Unload Movie - соответственно загрузка и выгрузка фильма броузером читателя;
• Tell Target - управление навигацией между Flash-фильмами и клипами.
Для того чтобы в режиме Normal Mode создать сценарий или добавить в него некоторую компоненту, необходимо выполнить следующие действия:
1. Выбрать на столе экземпляр кнопки или клипа (либо кадр на временной диаграмме), с которым должен быть связан сценарий.
2. Открыть в списке Action Toolbox требуемый раздел, щелкнув на нем левой кнопкой мыши.
3. Скопировать выбранный элемент в окно сценария, дважды щелкнув на имени или на значке элемента, или просто перетащив его мышью. При этом в окне отображается соответствующий фрагмент сценария на языке ActionScript.
4. Ввести в соответствующих полях требуемые значения параметров.
Когда назначаются действия кнопке или клипу, Flash автоматически генерирует специальную управляющую процедуру (handler), которая во многих объектно-ориентированных языках называется «обработчик события» (или «селектор»). Обработчик проверяет, произошло ли событие определенного типа, и если да, то инициирует соответствующую последовательность действий. Дополнительная роль обработчика в ActionScript - это объединение (группирование) действий, связанных с данным событием.
Для кнопок обработчик имеет имя on, а для клипов - onСlipEvent. Имя обработчика предшествует списку событий, на которые обработчик должен реагировать. Например, конструкция on(release, KeyPress:«A») означает, что обработчик должен реагировать на события двух типов: release (кнопка мыши отжата) и KeyPress:«A» (на клавиатуре нажата клавиша «А»).
Вообще для кнопок в языке ActionScript предусмотрены следующие типы событий:
• Press - пользователь нажимает кнопку мыши, когда указатель находится над изображением кнопки (фильма);
• Release - пользователь нажимает и затем отпускает кнопку мыши (указатель находится над изображением кнопки);
• Release Outside - пользователь отпускает кнопку мыши, когда указатель не находится над изображением кнопки;
• Key Press - пользователь нажимает определенную клавишу на клавиатуре;
• Roll Over - пользователь перемещает указатель над изображением кнопки;
• Roll Out - пользователь перемещает указатель за пределы изображения кнопки;
• Drag Over - пользователь нажимает кнопку мыши, когда указатель находится над кнопкой, выводит его за пределы кнопки, и затем опять устанавливает над кнопкой;
• Drag Out - пользователь нажимает кнопку мыши, когда указатель находится над кнопкой, и затем выводит его за пределы кнопки.
Чтобы изменить перечень событий, на которые должен реагировать элемент фильма, необходимо щелкнуть мышью в строке сценария, в которой записано имя обработчика. При этом изменится формат окна параметров, и в нем появится группа флажков, с помощью которых можно выбрать требуемые события. Сделанный выбор сразу же отображается в окне сценария.
Если добавление в сценарий некоторой конструкции приводит к ошибке или для нее требуется указать обязательный параметр, то конструкция выделяется в окне сценария красным цветом, так же она дублируется и в строке состояния.
Формат окна Insert a target path позволяет описать путь назначения некоторого элемента фильма. Это окно содержит следующие основные элементы интерфейса:
• дерево фильма, отражающее иерархию объектов фильма, к которым возможно обращение из сценария. Поскольку при обращении к объекту используется имя соответствующего экземпляра (кнопки, клипа, текстового поля), то в дерево включаются только поименованные экземпляры. Корневой элемент дерева зависит от способа адресации: для абсолютного адреса - это ключевое слово _root (то есть основной фильм), для относительной - слово this;
• многострочное текстовое поле Target (Назначение), предназначенное для ввода и корректировки пути назначения; если выбрать в дереве фильма некоторый элемент, то в поле Target появится соответствующий маршрут, который может быть изменен или дополнен вручную;
• пара переключателей Mode (Режим), которые позволяют выбирать способ адресации (относительный - Relative или абсолютный - Absolute);
• пара переключателей Notation (Нотация), которые позволяют выбирать формат записи пути назначения:
• вариант Dotes (Точки) означает применение точечной нотации;
• вариант Slashes (Слэши) соответствует записи с использованием слэшей (это «устаревший» стиль, используемый для совместимости с предыдущими версиями ActionScript).
Режим Expert Mode.Экспертный режим позволяет совмещать два способа формирования сценария: непосредственный ввод конструкций языка ActionScript с клавиатуры и вставку их в окно сценария из списка Actions Toolbox. Окно параметров при работе в экспертном режиме не отображается. В этом режиме не могут также использоваться кнопки удаления и перемещения строк сценария. Экспертный режим предназначен в первую очередь для тех, кто знаком с программированием на ActionScript. Поэтому, чтобы воспользоваться преимуществами данного режима, необходимо освоить основные приемы программирования на ActionScript. Вместе с тем, уровень поддержки пользователя, реализованный в Flash, позволяет самостоятельно создавать сценарии различного уровня сложности. Для этого в составе редактора сценариев имеются следующие средства:
• динамическая подсказка по конструкциям языка, реализованная в виде всплывающего списка параметров;
• встроенная утилита проверки синтаксиса Check Syntax.
Активизация обоих инструментов выполняется с помощью соответствующих кнопок, расположенных на панели инструментов окна сценария.
Щелчок на кнопке Check Syntax непосредственно активизирует процесс поиска синтаксических ошибок. В случае их обнаружения на экран выводится специальное диалоговое окно. С его помощью можно получить не только исчерпывающую информацию о характере, причинах и месте положения обнаруженной ошибки, но и настроить параметры работы утилиты Check Syntax. Такая установка выполняется с помощью команд раскрывающегося меню окна.
Для отыскания ошибок в более сложных сценариях может применяться специальный отладчик - Debugger. Этот инструмент достаточно тесно интегрирован с редактором сценариев. Расставив с помощью редактора контрольные точки, вы затем можете с помощью отладчика проследить процесс выполнения сценария по шагам. При этом в окне отладчика отображаются значения используемых в сценарии переменных, стек вызовов функции и другая информация, весьма полезная для программиста.
Чтобы перейти в режим отладки фильма, достаточно в меню Control основного окна выбрать команду Debug Movie (Отладка фильма). Предварительно, как было отмечено выше, полезно расставить в сценарии контрольные точки.
Поскольку работа в экспертном режиме предполагает наличие определенных навыков в программировании на ActionScript, то все последующие примеры создания сценариев рассматриваются применительно к режиму Normal Mode.