Команды в flash macromedia flash
Прошлая статья была посвящена анимации. Мы создавали анимацию на основе motion tweening, shape tweening и просто составляли движение из отдельных кадров. Думаю, пора перейти к более сложной теме, рассмотрению инструмента, который создает основу для большинства качественных Flash-фильмов (Flash movies).
Этот инструмент - ActionScript - событийно-управляемый язык, встроенный во Flash. Последняя версия ActionScript, (которая присутствует во Flash 5), существенно отличается от ActionScript, который был в 4-м Flash. Если в прошлой версии, это был ограниченный набор команд, позволяющий осуществлять лишь основные действия, и вводимый с помощью не очень удобного интерфейса, то новый ActionScript - это мощный язык, с увеличенным набором команд, поддержкой классов, наследования (!), и гораздо более удобным интерфейсом.
ActionScript делает ваши страницы интерактивными. Вы можете реагировать на события с мышки или с клавиатуры, можете выполнить какие-либо действия при проигрывании определенного кадра.
Для того, чтобы овладеть ActionScript в полной мере, желательно уже иметь опыт программирования (предпочтительно на С++, JavaScript, etc.). Однако, одним из достоинств языка Flash, является то, что вам не нужно быть профессионалом во Flash, или полностью знать ActionScript, чтобы писать на нем качественный код. Вы можете использовать те возможности языка, которые сочтете необходимыми для своей работы.
Так как эта статья посвящена основам языка, в ней мы рассмотрим:
- Панель действий (Actions panel), на которой происходит практически все общение с ActionScript.
- Кнопки - как их заставлять работать, как нам требуется.
- Пути - как обращаться к нужным объектам?
- Основные действия с Flash-мультиками (movie clips) - мы будем управлять процессом проигрывания фильма, как нам будет угодно.
- Отладку в ActionScript - окошки Output и Debugger.
Цель этой статьи, дать вам почувствовать ActionScript, показать, что этот язык может служить, как для создания весьма внушительных программ, так и для выполнения элементарных действий, которые сделают вашу страницу гораздо привлекательней.
Отладка в ActionScript
Последнее, что мы рассматриваем в этой статье: окна Output (вывод) и Debugger (отладчик) - инструменты, служащие для отладки сценариев ActionScript.
Использовать trace очень просто:
В 5-м Flash появился специальный инструмент - окошечко Debugger. Чтобы им пользоваться нужно проверять свои фильмы не как обычно (Test movie, Ctrl+Enter), а с помощью Debug movie (Ctrl+Shift+Enter). Окошко Debugger (рис. 4) можно скрыть/показать с помощью Window->Debugger.
Рис. 4 - Окно Debugger
В одной части окна Debugger находится иерархический список объектов, используемых в фильме. Выбрав объект, можно просматривать его свойства (закладка Properties).
Под закладкой Variables находятся все переменные. Преимущество закладки Variables состоит в том, что вы можете модифицировать значения любых переменных "на лету" и тут же получать отражение этого изменения в фильме.
И, наконец, можно добавить любые переменные в список просмотра (Watch list) и наблюдать за их значениями (закладка Watch).
Debugger позволяет отслеживать практически любые параметры Flash-фильмов. Тем не менее, я считаю, что свое применение есть и у окошка Output и у Debugger-a.
Вот и все на этот раз. Это - последняя статья из цикла. К счастью, сейчас появилось много материалов и руководств по основам Macromedia Flash 5. Продвинутые аспекты Flash постепенно переводятся/сочиняются на русском языке, и появляются на наших сайтах. Последующие материалы по Flash будут посвящены "продвинутым" аспектам Flash. Так же есть идея написания руководств по другим программам, производящим Flash-фильмы (в частности трехмерные).
Удачи вам! У вас есть великолепное средство делать сеть (и не только сеть) красивее! Пользуйтесь им, доставляя удовольствие посетителям ваших творений и самим себе.
В правой части окна программы Временная диаграмма (рис. 2.8) ролик представлен в виде упорядоченной во времени последовательности кадров ("кинопленки"). Содержание каждого отдельного кадра создастся и редактируется на Столе. В левой части окна Временная диаграмма ролик представлен в виде наложенных друг на друга слоев (структуры).
Рис. 2.3. Окно Сцена
Рис. 2.4. Окно Временная диаграмма
Рис. 2.5. Окно Библиотека в стандартном не расширенном виде
Рис. 2.6. Окно Библиотека
Рис 2.7. Окно проводника
Рис 2.8. Структура и временная диаграмма ролика
Комбинации клавиш
Комбинации клавиш В табл. 5.1 приведены все комбинации клавиш, задействованные в редакторе Visual Basic.Кроме них, вы можете использовать клавишные команды Windows для управления курсором и редактирования текста. Не забывайте и о том, что Shift+F10 вызывает контекстное меню для окна
5.3.3 Операторы && и ||
5.3.3 Операторы && и || Операторы и || являются управляющими операторами. Если в командной строке стоит command1 command2, то command2 выполняется в том, и только в том случае, если статус выхода из команды command1 равен нулю, что говорит об успешном ее завершении. Аналогично, если
Сочетания клавиш Windows ХР
Сочетания клавиш Windows ХР При работе с Windows ХР вместо мыши можно использовать сочетания клавиш. Они позволяют открывать и закрывать окна, перемещаться по меню Пуск, Рабочему столу, различным меню и диалоговым окнам, а также по Web-страницам. Использование сочетаний клавиш
5.5.1 Операторы ›, ‹ и ››
5.5.1 Операторы ›, ‹ и ›› Для обозначения перенаправления используются символы "›", "‹" и "››". Чаще всего используется перенаправление вывода команды в файл. Вот соответствующий пример:[user]$ ls -l › /home/jim/dir.txtПо этой команде в файле /home/jim/dir.txt будет сохранен перечень файлов и
5.8.6 Операторы while и until
5.8.6 Операторы while и until Оператор while работает подобно if, только выполнение операторов из списка list2 циклически продолжается до тех пор, пока верно условие, и прерывается, если условие не верно. Конструкция выглядит следующим образом: while list1 do list2 done.Пример: while [-d mydirectory]; do ls -l
Менеджеры «горячих» клавиш
Менеджеры «горячих» клавиш Большинство пользователей предпочитают работать за компьютером, применяя «горячие» клавиши. Упорядочить использование «горячих» клавиш помогают специальные программы — менеджеры «горячих» клавиш. С их помощью можно назначить сочетания
Операторы
Операторы Операторы служат основными строительными блоками программы. Программа состоит из последовательности операторов с добавлением небольшого количества знаков пунктуации. Оператор является законченной инструкцией для компьютера. В языке Си указанием на
Виртуальные коды клавиш
Создание кнопок
Кнопка представляет собой четырехкадровый интерактивный мувиклип. Когда мы присваиваем символу тип «Кнопка», Flash создает для нового символа монтажную линейку из четырех кадров:
• Up-состояние это кадр, соответствующий ситуации, когда кнопка не нажата и указатель мыши расположен не над кнопкой;
• Over-состояние кадр, иллюстрирующий вид кнопки, когда указатель мыши расположен над кнопкой, но кнопка не нажата;
• Down-состояние данный кадр показывает вид кнопки при ее нажатии;
• Hit-состояние определяет область, в которой кнопка реагирует на щелчок мыши; эту область в клипе не видно.
Чтобы создать кнопку, выполните команду Insert => New Symbol (можно набрать сочетание клавиш Control+F8). В появившемся диалоговом окне Create New Symbol введите имя символа-кнопки (например, but1) и выберите тип символа Button («Кнопка»).
Flash переключится в режим редактирования символа, предоставив кадры Up, Over, Down и Hit. Первый кадр, Up, становится пустым ключевым кадром. Нарисуем в этом кадре ненажатый вид кнопки (рис. 1).
Рис. 1. UP-кадр кнопки
Выделим второй кадр, помеченный как Over и соответствующий состоянию, когда курсор занесен над кнопкой. Вставим в этом кадре ключевой фрейм (по команде Insert => Keyframe ), в результате чего появится ключевой кадр, полностью повторяющий содержание Up-кадра. Изменим цвет кнопки, как показано на рис. 2.
Рис 2. Over-кадр кнопки
Аналогично добавим следующий кадр (Down-кадр) и нарисуем нажатое состояние кнопки (рис. 3).
Рис. 3. Down-кадр кнопки
В Hit-кадре пока не будем ничего рисовать, а вернемся к этому кадру чуть позже.
Перейдем к основной сцене, вызовем библиотеку по команде Window => Library и создадим экземпляр символа кнопки путем перетаскивания его на сцену (рис. 4.)
Рис. 4. Создадим экземпляр кнопки, перетащив его из библиотеки
В результате получим следующий фильм. Как видно из данного фильма, надавливание кнопки происходит не только тогда, когда мы нажимаем мышью на центральную (рабочую) зону кнопки, но и при нажатии на рамку вокруг нее. Связано это с тем, что если Hit-кадр не нарисован, то рабочая область кнопки будет соответствовать Up-кадру.
Для того чтобы нажатие кнопки происходило только в рабочей зоне, необходимо в Hit-кадре определить эту зону, то есть нарисовать кнопку без рамки (см. рис. 5)
Рис. 5. Hit-кадр кнопки
После того как мы добавим необходимый Hit-кадр получим следующий фильм, в котором при нажатии на рамку продавливания кнопки не происходит.
Чтобы сделать кнопку интерактивной, необходимо связать факт нажатия кнопки с выполнением определенных команд, то есть описать определенный сценарий. Для задания сценариев во Flash существует специальный язык Action Script. В данном уроке мы затронем лишь незначительную часть возможностей этого языка, а в дальнейшем будем возвращаться к структуре и синтаксису Action Script по мере усложнения примеров создания интерактивных фильмов на Flash.
Набор инструментов
Здесь собраны инструменты, позволяющие рисовать, закрашивать, выделять и изменять графику, а также изменять вид Стола,
- Инструменты - содержит инструменты для рисования, закрашивания и выделения некоторой части рисунка;
- Вид - содержит инструменты для уменьшения/увеличения и перемещения графики в окне приложения;
- Цвета - содержит модификаторы для контура и для заполняющего цвета;
- Настройки - показывает модификаторы для ресурсного в настоящий момент инструмента рисования или редактирования.
Чтобы показать или скрыть панель инструментов, выберите команду Окно >> Инструменты.
До сих пор мы рассматривали Flash-фильмы, которые воспроизводились без вмешательства зрителя от начала и до конца. Однако Flash позволяет также создавать интерактивные приложения, в которых пользователь может управлять демонстрацией контента. В данном уроке мы начнем знакомство с элементами языка описания сценариев Action Script и рассмотрим, как с его помощью можно создать интерактивные приложения. В качестве примера создадим фотоальбом с элементами интерактивного интерфейса. Но прежде чем приступить к описанию Action Script, следует рассказать еще об одном виде символов, который мы до сих пор оставляли без внимания, — это символы-кнопки. Для построения интерактивного интерфейса они просто необходимы.
Операторы
Операторы Операторов язык JavaScript поддерживает очень много — на все случаи жизни. Их можно разделить на несколько
Блок цифровых клавиш
Блок цифровых клавиш Назначение данного блока клавиш – быстрый набор цифр и знаков арифметических операций. Этот блок клавиш (рис. 1.11) может выполнять и функции клавиш управления курсором. Цифровым он становится только тогда, когда нажата клавиша Num Lock (когда горит
Основные действия с Movie Clips
Огромная доля творчества во Flash приходится на манипуляцию символами. Практически все базовые приемы, все трюки и эффекты невыполнимы без этих действий.
С помощью сценариев на ActionScript вы можете выполнять практически любые действия над символами. Надо только помнить, что выполнить эти действия можно только либо в ответ на действие пользователя, либо при наступлении какого-то кадра на временной шкале.
Итак, что же у нас есть? Я перечислю только основные (на мой взгляд) инструменты. Остальное вы найдете в списке элементов языка или в помощи.
Функции клипов (movie clip), которые можно вызывать:
- play() - начинает или возобновляет воспроизведение клипа;
- stop() - останавливает воспроизведение клипа;
- gotoAndPlay() - переходит на определенный кадр (сцену) и продолжает воспроизведение;
- gotoAndStop() - переходит на определенный кадр (сцену) и останавливает воспроизведение.
Свойства (параметры) клипов, которые можно считывать/изменять:
- _x, _y - координаты клипа (в пикселях);
- _xscale, _yscale - масштаб клипа (в процентах), соответственно по горизонтали и по вертикали;
- _width, _height - ширина и высота клипа (в пикселях);
- _rotation - угол поворота клипа (в градусах);
- _alpha - прозрачность клипа (в процентах);
- _visible - видимость.
Это далеко не все, что можно делать с клипами. Используйте другие параметры, экспериментируйте, творите!
18.3. Операторы if then else
18.3. Операторы if then else Оператор if позволяет осуществить проверку условий. Проверка выполняется на основе значений "истина" (0) или "ложь" (1), после чего могут вызываться наборы операторов. Конструкция оператора if идеально подходит для проверки ошибок. Этот оператор имеет
16.2. Комбинации клавиш
16.2. Комбинации клавиш Используя приведенные в табл. 16.1 комбинации клавиш, вы сэкономите свое рабочее время (все-таки проще нажать ту или иную комбинацию клавиш, чем бродить по «дебрям» меню
Послушай клавиш перебор
Послушай клавиш перебор Команда исследователей из Калифорнийского университета в Беркли (UCB) внесла ощутимый вклад в понимание и освоение некогда сверхсекретной области компрометирующих излучений аппаратуры. На Западе эту тематику принято именовать кратким кодовым
Интерактивный фотоальбом
Продемонстрируем использование кнопок для управления фотоальбомом — создадим набор фотографий и добавим две кнопки, которые будут листать фото вперед и назад.
Поместим на основной монтажной линейке первое фото и добавим кнопку из стандартного набора. Для доступа к нужной папке следует выполнить команду Windows => Сontrol Panels Common Libraries => Buttons (рис. 6).
Рис. 6. Добавим кнопку из стандартной библиотеки
В результате выполнения данной команды появится панель, содержащая большой набор заранее нарисованных кнопок различных типов. Выберем, например, Key Buttons (кнопки, похожие на клавиатурные клавиши), откроем соответствующую папку, выберем кнопку key-left (рис. 7) и создадим экземпляр данной кнопки (путем перетаскивания ее на сцену).
Рис. 7. Элементы папки Key Buttons
Обратите внимание, что, когда вы устанавливаете вторую кнопку (key-right) на сцене и перемещаете ее, чтобы установить на одном уровне с первой кнопкой, программа дает подсказку (пунктирную линию), которая позволяет точно позиционировать кнопку (рис. 8).
Рис. 8. Автоматическое выравнивание кнопок на одном уровне
Для того чтобы добавить сценарий, необходимо вызвать редактор Action Script по команде Window =>Development Panels => Actions или нажав клавишу F9. Если вы собираетесь часто писать скрипты, то эту клавиатурную команду стоит запомнить. В результате появится редактор Action Script (рис. 9).
Рис. 9. Панели редактора Action Script
Мы будем присваивать сценарий кнопке. В последних версиях ActionScript имеется возможность писать централизованный код, то есть код, который размещен в одном месте, и такая возможность позволяет лучше разбираться в больших программах. Однако в простых примерах (которые мы и рассматриваем) присваивание сценария кнопке вполне допустимо.
Итак, для кнопки со стрелкой влево нам нужно формализовать следующий сценарий: «Если кнопка отпускается на некотором кадре, то с этого кадра необходимо перейти на предыдущий кадр». В соответствии с синтаксисом языка Action Script (рис. 10) это будет выглядеть следующим образом:
Ну что ж, с данными, константами и переменными покончено. Пора приступать к рассмотрению операторов, предназначенных для манипуляций с ними.
Арифметические операторы служат для выполнения арифметических действий над значениями констант и переменных. Все арифметические операторы, поддерживаемые ActionScript, перечислены в табл. 19.2.
Арифметические операторы делятся на две группы: унарные и бинарные. Унарные операторы выполняются над одним операндом; к ним относятся операторы смены знака, инкремента и декремента. Унарный оператор извлекает из переменной значение, изменяет его и снова помещает в ту же переменную. Приведем пример выражения с унарным оператором:
При выполнении этого выражения в переменной r окажется ее значение, увеличенное на единицу. А если записать вот так:
то же значение будет помещено и в переменную s.
Операторы инкремента и декремента могут ставиться как перед операндом, так и после него. Если оператор инкремента стоит перед операндом, то значение операнда сначала инкрементируется, а уже потом используется в дальнейших вычислениях. Если же оператор инкремента стоит после операнда, то его значение сначала используется в других вычислениях, а уже потом инкрементируется. Точно так же ведет себя оператор декремента.
Бинарные операторы всегда имеют два операнда и помещают результат в третью переменную. Вот примеры выражений с бинарными операторами:
Операторы инкремента и декремента рекомендуется использовать, если значение какой-либо переменной нужно увеличить или уменьшить на единицу. Эти операторы выполняются быстрее, чем операторы сложения и вычитания.
Оператор объединения строк
Оператор объединения строк + позволяет соединить две строки в одну. Например, сценарий:
поместит в переменную s строку "FiashS".
Оператор простого присваивания = нам уже знаком. С его помощью переменной присваивается новое значение:
Второе выражение в приведенном примере выполняет присвоение значения 3 сразу двум переменным — b и с.
Кроме операторов присваивания, ActionScript поддерживает операторы сложного присваивания. Такие операторы позволяют выполнять операцию присваивания одновременно с другой операцией:
Два этих выражения эквивалентны по результату. Просто во втором был использован оператор сложного присваивания +=.
Все операторы сложного присваивания, поддерживаемые ActionScript, и их эквиваленты приведены в табл. 19.3.
Операторы сравнения сравнивают два операнда и возвращают логическое значение. Если условие сравнения выполняется, возвращается логическое значение "истина" (true), если не выполняется — "ложь" (false). Вот примеры выражений с операторами присваивания:
Переменная a1 получит значение true (2 меньше 3), переменная а2 — значение false (число -4 по определению не может быть больше нуля), а значение переменной а3 будет зависеть от значений переменных r и t.
Все поддерживаемые ActionScript операторы сравнения приведены в табл. 19.4.
С первыми шестью операторами сравнения все понятно. Но на двух последних операторах — "строго равно" и "строго не равно" — нужно остановиться подробнее. Это операторы так называемого строгого сравнения. Обычные операторы "равно" и "не равно", если встречают операнды разных типов, пытаются преобразовать их к одному типу (о преобразованиях типов см. далее в этой главе). Операторы строгого равенства и строгого неравенства такого преобразования не делают, а в случае несовместимости типов операндов возвращают false.
Логические операторы выполняют действия над логическими значениями. Все они приведены в табл. 19.5. А в табл. 19.6 и 19.7 показаны результаты выполнения этих операторов.
Основная область применения логических операторов — выражения сравнения (о них см. далее в этой главе). Приведем примеры таких выражении:
flag =! (status — 0);
Оператор typeof
Оператор typeof принимает в качестве операнда переменную или выражение и возвращает строку, описывающую тип данных операнда. Все значения, которые он может вернуть, перечислены в табл. 19.8.
Оператор typeof может использоваться, например, так:
status = typeof (somevar);
Здесь мы присваиваем результат выполнения оператора typeof строковой переменной status. Впоследствии он может быть использован, например, в условном выражении.
Совместимость и преобразование типов данных
И напоследок рассмотрим еще два важных вопроса: совместимость типов данных и преобразование одного типа к другому.
Что получится, если сложить два числовых значения? Правильно — еще одно числовое значение. А если сложить число и строку? Трудно сказать. Тут Flash сталкивается с проблемой несовместимости типов данных и пытается сделать эти типы совместимыми, преобразуя один из них к другому. Сначала он пытается преобразовать строку в число и, если это удается, выполняет сложение. В случае неудачи число будет преобразовано в строку, и две полученные строки будут объединены. Например, в результате выполнения операторов
var а, b, с, d, е, f;
значение переменной b при сложении с переменной а будет преобразовано в числовой тип; таким образом, переменная с будет содержать значение 23. Но так как значение переменной d не может быть преобразовано в число, значение е будет преобразовано в строку, и результат — значение f — станет равным "FlashS".
Логические величины преобразуются либо в числовые, либо в строковые, в зависимости от конкретного случая. Значение true будет преобразовано в число 1 или строку "1", а значение false — в 0 или "0".
Видно, что Flash изо всех сил пытается правильно выполнить даже некорректно написанные выражения. Иногда это получается, но чаще все работает не так, как планировалось, и, в конце концов, выполнение сценария прерывается в связи с обнаружением ошибки совсем в другом его месте, на абсолютно верном операторе. Поэтому лучше всего не допускать подобных казусов, оперировать только переменными совместимых типов и самим выполнять нужные преобразования типов.
Для преобразования типов данных используется следующий синтаксис:
Ключевые слова, соответствующие тому или иному типу данных, приведены в табл. 19.8. Да, именно эти слова возвращает оператор typeof в качестве результата. Единственное — их нужно указывать с большой буквы.
Например, для того чтобы преобразовать строку в число, нужно написать такое выражение:
Если же Flash не сможет выполнить заданное преобразование типов, будет возвращено значение null.
Последний вопрос, который мы здесь рассмотрим, — это приоритет операторов. Как мы помним, приоритет влияет на порядок, в котором выполняются операторы в выражении.
Пусть имеется следующее выражение:
В этом случае сначала к значению переменной b будет прибавлено значение с, а потом из суммы будет вычтено 10. Операторы этого выражения имеют одинаковый приоритет и поэтому выполняются строго слева направо.
Теперь рассмотрим такое выражение:
А в этом случае сначала будет выполнено умножение значения с на 10, а уже потом к полученному произведению будет прибавлено значение b. Оператор умножения имеет больший приоритет, чем оператор сложения, поэтому порядок "строго слева направо" будет нарушен.
Самый низкий приоритет имеет оператор присваивания =. Вот почему сначала вычисляется само выражение, а потом его результат присваивается переменной.
В общем, основной принцип выполнения всех операторов таков: сначала выполняются операторы с более высоким приоритетом, а уже потом — операторы с более низким. Операторы с одинаковым приоритетом выполняются в порядке их следования (слева направо).
В табл. 19.9 перечислены все изученные нами операторы в порядке убывания их приоритетов. Полную таблицу приоритетов можно найти в интерактивной справке Flash.
Запомните эту таблицу. Неправильный порядок выполнения операторов может стать причиной трудновыявляемых ошибок, при которых внешне абсолютно правильное выражение дает неверный результат.
Но что делать, если нам нужно нарушить обычный порядок выполнения операторов? Воспользуемся скобками. При такой записи заключенные в скобки операторы выполняются первыми.
В этом случае сначала будет выполнено сложение значений переменных b и с, а потом получившаяся сумма будет умножена на 10.
Операторы, заключенные в скобки, также подчиняются приоритету. Поэтому часто используются многократно вложенные скобки:
а = ((b + с) * 10 — d) /2 + 9;
Здесь операторы будут выполнены в такой последовательности:
2. Умножение полученной суммы на 10.
3. Вычитание d из произведения.
4. Деление разности на 2.
5. Прибавление 9 к частному.
Если удалить скобки:
то порядок выполнения операторов будет таким:
1. Умножение с и 10.
2. Деление d на 2.
3. Сложение b и произведения с и 10.
4. Вычитание из полученной суммы частного от деления d на 2.
5. Прибавление 9 к полученной разности.
Получается совсем другой результат, не так ли?
Данный текст является ознакомительным фрагментом.
Продолжение на ЛитРес
Комбинации клавиш для отладки
Комбинации клавиш для отладки В табл. 9.1 перечислены комбинации клавиш, которые используются при отладке. Подробно каждую из них я рассмотрю дальше в настоящей главе.Построчное выполнение кода (пошаговое) <F8>Построчное выполнение кода без построчного выполнения
Операторы SQL
Операторы SQL Оператор SQL используется для выполнения запроса к базе данных. Язык запросов выражается в операторах, которые задают цель: что должно быть сделано (операция), объекты, с которыми это должно быть сделано, и детализация, как это должно быть сделано. По теории
Понятие об Action Script
Action Script представляет собой язык написания сценария — набора инструкций, которые управляют элементами Flash-фильма. Сценарии Action Script могут быть встроены в фильм или храниться во внешнем текстовом файле с расширением AS.
При встраивании сценария в фильм его можно внедрять в разные части фильма. Точнее, сценарии Action Script могут содержать ключевые кадры, экземпляры кнопок и экземпляры мувиклипов. Соответственно сценарии называются сценариями кадра (Frame Action), сценарием кнопки (Button Action) и сценарием клипа (MovieClip Action).
Сценарии Action Script выполняются по наступлении определенных событий, инициированных пользователем или системой. Механизм, который указывает программе Flash, какой оператор следует выполнить при наступлении того или иного события, называется обработчиком событий.
Action Script имеет собственный синтаксис, во многом схожий с синтаксисом JavaScript. Flash MX 2004 поддерживает Action Script всех предыдущих версий Flash.
Одним из основных понятий Action Script являются Actions — команды, которые выдают инструкции во время исполнения SWF-файла. Например, gotoAndStop() отсылает воспроизводящую головку (Рlayhead) на определенный кадр или метку. От слова Actions и происходит название языка — Action Script (дословно — сценарий действий). С большинством понятий этого языка мы ознакомимся на конкретных примерах.
Операторы
Операторы Операторов язык JavaScript поддерживает очень много — на все случаи жизни. Их можно разделить на несколько групп. Арифметические операторы Арифметические операторы служат для выполнения арифметических действий над числами. Все арифметические операторы,
R.6 Операторы
R.6 Операторы Все операторы, за исключением оговоренных случаев, выполняются один за
Имена
Для того, чтобы обращаться к клипам, нам потребуется разобраться с понятием имени объекта (instance name) и пути до объекта (target path). Договоримся, что клип (movie clip) и объект для нас - одинаковые вещи.
Имя объекта - это имя конкретного экземпляра символа. Скажем у нас может быть символ - машинка, а экземпляры этого символа будут называться "Машинка1", "Машинка2", "Pickup", "Запорожец"…
Для того чтобы дать имя объекту нужно выделить объект, и в панели Instance (Window->Panels->Instance, Ctrl+I) в графе Name ввести имя объекта (рис. 2). Имена могут состоять только из букв, цифр и символа подчеркивания ("_"), причем имя не может начинаться с цифры.
Рис. 2 - Панель Instance
Путь до объекта - это запись имени объекта с учетом иерархии. Попытаюсь объяснить, что это такое.
Вы знаете, что во Flash объекты можно "вкладывать" друг в друга, составляя, таким образом, иерархию. Так вот, эта вложенность обеспечивает не только удобство в обращении с объектами, она еще и ограничивает видимость имен объектов. Видимость ограничивается своим уровнем. Объект может напрямую (по имени) обращаться только к объектам, входящим в него, стоящим на 1 уровень ниже в иерархии.
Для того чтобы обратиться к объекту другого уровня, нужно знать путь до него. Причем путь может указываться как абсолютно (с самого верхнего уровня иерархии), так и относительно (с текущего уровня).
Путь включает в себя объекты, через которые нужно "пройти" по дереву иерархии, чтобы добраться до нужного нам объекта, перечисленные через точку. Кроме того, существует несколько указателей (можно их назвать "виртуальными объектами"), которые часто очень полезны:
this - указатель на "самого себя" (т.е на текущий объект). Бывает нужен, например, когда нужно передать в функцию указатель на объект, из которого эта функция вызывается.
_parent - указатель на "родителя". Указывает на объект стоящий уровнем выше в иерархии.
_root - "корень". Это начало иерархии. Без него не обойтись при указании абсолютного пути.
Путь выглядит так:
leaf.play(); - у подобъекта leaf (лист) вызывается функция play();
_parent.tree.leaf.stop(); - подразумевается, что на одном уровне имеется объект tree, у которого есть объект leaf, у которого и вызывается функция stop();
_root.banner._visible = false; - сделать клип banner, находящийся на 1-м уровне, невидимым.
Рис. 3 - Иерархия клипов
Для иллюстрации возьмем иерархию из 5-ти объектов (рис. 3). Объекты 1-4 находятся на 1-м слое, объект 5 - на 2-м слое. Объект 2 вложен в объект 1, а объект 3 вложен в объект 2. Объекты на рисунке визуально вложены друг в друга, но это ни в коем случае не означает, что так должно быть и "в жизни". Здесь они так сгруппированы для наглядности. Так как имя объекта не может начинаться с цифры, пусть объекты у нас называются obj1-obj5.
Теперь займемся путями. Для начала посмотрим, какие объекты могут обращаться друг к другу по имени. obj1 может обращаться к obj2, а obj2 - к obj3, но при этом obj1 не может обратиться к obj3 напрямую, т.к. тот содержится не в obj1, а в obj2.
Скажем первому объекту нужно, чтобы объект 3 начал заново воспроизводиться с 1-го кадра. Вот как это делается:
Чтобы 4-му объекту сделать 1-й объект (заметьте со всеми подобъектами!) полупрозрачным, ему нужно в своем сценарии написать следующее:
Т.к. obj4 у нас находится на первом уровне иерархии, то для него _root и _parent - одно и то же.
Теперь для объекта 3 напишем скрипт, который сделает объект 5 невидимым при нажатии клавиши мыши. В сценарии для объекта 3 пишем:
В этом фрагменте мы использовали абсолютный путь. Если бы мы использовали относительный, это выглядело бы как:
Надеюсь, я прояснил момент с путями.
Приведенные выше примеры показали не только как выглядят пути, но и как вызываются функции и присваиваются значения свойствам.
Вы можете попробовать использовать обработчик onClipEvent, задавая различные условия и выполняя различные действия с объектами при этом.
Одними из самых важных являются функции управления ходом воспроизведения клипа (play(), stop(), gotoAndPlay(), gotoAndStop()). Функции play() и stop() вызываются без параметров, в то время как в goto нужно указывать кадр, и, возможно, сцену.
Создание слоев и комбинаций слоев
Создание слоев и комбинаций слоев По описанию инструмента, каким бы подробным оно ни было, достаточно сложно, особенно для начинающего пользователя, понять принцип его функционирования. Список слоев и комбинаций слоев в стандартной поставке ArchiCAD слишком объемен и
Операторы
Операторы Оператор — это конструкция языка Object Pascal, выполняющая определенную операцию. Все операторы можно разбить на несколько
4. ОПЕРАТОРЫ
4. ОПЕРАТОРЫ Операторы в языке Java — это специальные символы, которые сообщают транслятору о том, что вы хотите выполнить операцию с некоторыми операндами. Типы операций указываются с помощью операторов, а операнды - это переменные, выражения или литералы. Некоторые
Таблица горячих клавиш
Таблица горячих клавиш Название — Перевод — Горячие клавиши— Выделение — Add Selection — Добавить к выделению — <Shift>+ Clone Selection — Клонирование выделения — <Alt>+ Intersect Selection — Пересечение выделений — <Shift>+<Alt>+ Inverse — Инвертировать — <Shift>+<Ctrl>+<I> Paste Image to
Поиск заданных комбинаций символов
Поиск заданных комбинаций символов Тестирование производительности путем выполнения поиска определенных текстовых шаблонов в содержимом файлов производилось с использованием трех различных методов, что позволило оценить сравнительную эффективность многопоточного
Термины
Прежде чем мы перейдем к конкретным действиям, несколько терминов из области ActionScript:
- Действия (Actions) - это инструкции, которые говорят Flash-мультику что делать. От них произошло название языка - ActionScript (дословно - сценарий действий). Давайте договоримся, что в рамках этой статьи, мы будем использовать термин "инструкция", дабы не путаться с настоящими действиями, которые будем производить.
- События (Events) - это действия, которые происходят, когда проигрывается мультик. События, например, могут происходить, когда заканчивается загрузка какого-то кадра, когда мы достигаем какого-то кадра, когда пользователь нажимает клавишу на клавиатуре или курсор мышки оказывается над нашим объектом.
- Выражения (Expressions) - это любая часть инструкции, которая порождает значение. Следующие примеры являются выражениями: 2 + 2, 2 * 2, a + b, 2*pi*r, (15 + k) * random(10).
- Функции (Functions) - это блок кода, который можно многократно использовать. Функции можно передавать значения и получать от нее возвращаемый результат. Например, number = get_color(15, 24). 15 и 24 являются аргументами (или параметрами) функции get_color, возвращаемое значение которой записывается в переменную number.
- Классы (Classes) - это типы объектов. Например, класс дерева - растение. Во Flash есть некоторое количество предопределенных классов (очень похожих на классы JavaScript). Вы можете создавать свои классы, или модифицировать существующие.
- Экземпляры (Instances) - это буквально экземпляры определенных классов. Например, экземпляром растения могут являться дерево, куст или цветок. Экземпляр - это уже конкретный реальный объект. Если класс - это определение объекта (экземпляра), то экземпляр - это уже конкретное воплощение, это класс в действии. Каждому экземпляру можно присвоить имя, чтобы через него обращаться к функциям или переменным объекта.
- Обработчики (Handlers) - это специальные инструкции, которые обрабатывают события. Например onClipEvent - обработчик действий, связанных с конкретным символом (см. Macromedia Flash ч. 2).
- Операторы (Operators) - это элементы языка, которые вычисляют значения, исходя из одного или более аргументов. Например, оператор сложения (+) возвращает сумму двух значений, стоящих слева и справа от него.
- Переменные (Variables) - это идентификаторы, которые могут хранить значения. Например, a = 5; или name = "Michael".
Эти термины мы будем использовать при обсуждении ActionScript. Итак…
Создание слоев и комбинаций слоев
Создание слоев и комбинаций слоев Список слоев и комбинаций слоев в стандартной поставке ArchiCAD слишком объемен и сложен, поэтому начинающему пользователю непросто разобраться в работе со слоями. Гораздо проще понять принцип работы этого механизма на примере.Зададим
Операторы
Комбинации клавиш, используемые во Flash для быстрого выполнения различных операций без вызова меню, настраиваются в диалоговом окне Keyboard Shortcuts (рис. 23.7). Чтобы вызвать его на экран, нужно выбрать пункт Keyboard Shortcuts меню Edit.
Нужно сказать сразу, что Macromedia Flash 8 поставляется с шестью предопределенными наборами комбинаций клавиш. Каждый из этих наборов объединяет комбинации клавиш, применяемые в шести популярных графических программах (включая и сам Flash). Выбирается нужный набор с помощью раскрывающегося списка Current, в котором доступны шесть пунктов:
? Macromedia Standard — стандартный набор комбинаций клавиш, используемый по умолчанию во Flash 8;
? Fireworks 4 — комбинации клавиш Macromedia Fireworks 4;
? Flash 5 — комбинации клавиш, используемые в Macromedia Flash 5;
? Freehand 10 — комбинации клавиш Macromedia Freehand 10;
? Illustrator 10 — комбинации клавиш Adobe Illustrator 10;
? Photoshop 6 — комбинации клавиш Adobe PhotoShop 6.
Если нам не подходит ни один из этих предопределенных наборов, мы можем создать свой на базе одного из них. Для этого выберем в списке Current набор, наиболее близкий к нашим потребностям, и нажмем кнопку, расположенную правее этого списка:
На экране появится диалоговое окно Duplicate (рис. 23.8). Введем в единственное поле ввода Duplicate name этого окна имя создаваемого набора и нажмем кнопку ОК. Нажатие кнопки Cancel отменяет создание нового набора.
Сразу после создания нового набора его имя появится в раскрывающемся списке Current. Теперь мы можем изменять комбинации клавиш, входящие в этот набор, как нам заблагорассудится.
Прежде всего, нужно задать с помощью раскрывающегося списка Commands группу комбинаций клавиш, которую требуется изменить. Этот список содержит семь пунктов:
? Actions Panel Commands — операции, доступные в панели Actions.
? Drawing Menu Commands — пункты главного меню, отображаемые в обычном режиме;
? Mobile Menu Commands — пункты меню окна просмотра фильма, предназначенного для мобильных устройств;
? Script Edit Commands — пункты меню, доступные при работе с окном кода (окно кода и файлы сценариев ActionScript описаны в интерактивной справке Flash);
? Test Movie Menu Commands — пункты меню окна просмотра фильма;
? Timeline Commands — операции, доступные в панели Timeline;
? Tools Panel — инструменты, доступные в главном инструментарии;
? Workspace Accessibility Commands — операции, с помощью которых выполняется переход с одного элемента управления на другой;
Если мы выберем один из пунктов списка Commands, соответствующий набор пунктов меню, инструментов или операций появится в иерархическом списке, расположенном ниже (см. рис. 23.7). Если были выбраны пункты Drawing Menu Commands, Test Movie Menu Commands или Script Edit Commands, то отображается иерархический список, "ветвями" которого являются меню и подменю, а пунктами — соответствующие пункты этих меню и подменю. Если же был выбран какой-либо из остальных пунктов, отображается обычный список, содержащий названия инструментов или операций.
Кроме названия собственно пункта меню, инструмента или операции, каждый пункт этого списка содержит также обозначения всех клавиатурных комбинаций, привязанных к нему (к ней). Так что мы сразу можем увидеть, подходит нам эта комбинация клавиш или нет.
Если мы выберем любой из пунктов иерархического списка, ниже его появится краткое описание пункта меню, инструмента или операции. А еще ниже, в списке Shortcuts, будут отображены все привязанные к нему (к ней) комбинации клавиш.
Чтобы изменить какую-либо комбинацию клавиш, выберем ее в списке Shortcuts. Выбранная комбинация клавиш появится в поле ввода Press key, расположенного под списком Shortcuts. Щелкнем мышью по содержимому этого поля и нажмем нужную комбинацию клавиш. После этого нажмем кнопку Change, и новая комбинация клавиш заменит старую в списке Shortcuts.
Чтобы добавить новую комбинацию клавиш к уже существующим, нажмем кнопку со знаком "плюс", расположенную над списком Shortcuts. В поле ввода Press key появится надпись . Так же, как и при изменении комбинации клавиш, выделим содержимое поля ввода Press key и нажмем нужную комбинацию клавиш. После этого, опять же, нажмем кнопку Change, и новая комбинация клавиш добавится в список Shortcuts.
Чтобы удалить ненужную или ошибочно введенную комбинацию клавиш, выберем ее в списке Shortcuts и нажмем кнопку со знаком "минус", расположенную над списком Shortcuts. Выбранная клавиатурная комбинация тотчас исчезнет из этого списка.
Мы также можем переименовать созданный нами набор комбинаций клавиш. Для этого выберем его в списке Current и нажмем кнопку, расположенную правее этого списка:
На экране появится диалоговое окно Rename, аналогичное окну Duplicate (см. рис. 23.8). Введем в единственное поле ввода New name новое имя набора и нажмем кнопку ОК. Если нажать кнопку Cancel, Flash оставит набору старое имя.
Разумеется, Flash предоставляет также возможность удалить ненужный или ошибочно созданный набор комбинаций клавиш. Для этого нажмем кнопку, расположенную правее списка Current:
На экране появится диалоговое окно Delete Set (рис. 23.9). Выберем в списке, занимающем большую часть этого окна, нужный набор и нажмем кнопку Delete; если нажать кнопку Cancel, ни один набор не будет удален.
Набор Macromedia Standard, поставляемый вместе с Flash, невозможно ни переименовать, ни удалить.
Еще одна возможность, появившаяся только во Flash 8, — экспорт набора комбинаций клавиш в виде Web-страницы. Такая Web-страница будет содержать набор таблиц, каждая из которых соответствует одной из групп комбинаций клавиш и содержит все входящие в эту группу комбинации клавиш.
Чтобы выполнить экспорт набора, его нужно будет выбрать в списке Current и нажать кнопку:
На экране появится стандартное диалоговое окно сохранения файла Windows; вводим в него имя Web-страницы и нажимаем кнопку сохранения.
Создав новые наборы комбинаций клавиш или внеся изменения в старые, нужно нажать кнопку ОК для их сохранения. Чтобы отказаться от изменений и вернуть предыдущие настройки, достаточно нажать кнопку Cancel.
Данный текст является ознакомительным фрагментом.
Продолжение на ЛитРес
Окно "Библиотека"
Окно Библиотека - место, где хранятся созданные во Flash символы, а также импортированные файлы, в том числе звуковые файлы, растровая графика и ролики QuickTime. Окно Библиотека позволяет сгруппировать хранящиеся в библиотеке элементы в различные папки, в зависимости от того, насколько часто каждый элемент используется в ролике.
Панель действий (Actions Panel)
Панель действий служит для отображения и ввода ActionScript программ (рис. 1). Существует два режима работы с панелью - нормальный (для "чайников") и экспертный. В экспертном режиме список команд - это простое поле для ввода текста. В нормальном же режиме, мы не можем напрямую редактировать команды. Для этого используется панель параметров.
Добавить инструкцию можно, нажав на кнопку "+" (см. рис. 1) или выбрав соответствующую инструкцию в списке элементов языка. Кроме того, для всех действий во Flash имеются последовательности клавиш, с помощью которых это можно сделать гораздо быстрее. Они приведены справа от каждого действия в меню кнопки "+". Например, чтобы добавить функцию stop(), нужно нажать Esc+st (последовательно: Esc, затем "s", затем "t").
Удалить инструкцию можно, выбрав ее, и нажав кнопку "-" (или просто клавишу Delete).
Я рекомендую вам не начинать сразу же пользоваться экспертным режимом, если у вас нету опыта программирования на Java-подобных языках (С++, Java, JavaScript). У нормального режима есть большое достоинство, делающее его незаменимым для новичков - в нем есть гораздо меньше шансов ошибиться с синтаксисом языка. Новичкам это поможет быстрее понять тонкости ActionScript.
Рис. 1 - Панель действий
В панели действий отображаются действия объекта, либо кадра, выбранного в данный момент.
Кнопки
Первое, что хочется, когда начинаешь изучать интерактивность Flash - сделать что-нибудь, что бы откликалось на действия пользователя, "оживить" ваше творение, добавить обратную связь. Самый простой способ сделать это - кнопки. Поэтому с них-то мы и начнем.
Как вы знаете, во Flash существует специальный тип символа для создания кнопок - Button (см. Macromedia Flash ч. 2). Будем считать, что вы уже научились создавать кнопки, теперь научимся отслеживать нажатия на эти кнопки.
Кнопки в Macromedia Flash обладают обширным списком событий, на которые мы можем реагировать:
- press - клавиша мышки нажата, когда курсор находится в пределах кнопки;
- release - клавиша мышки отжата, когда курсор находится в пределах кнопки;
- releaseOutside - клавиша мышки отжата, когда курсор находится вне пределов кнопки;
- rollOver - курсор мыши входит в пределы кнопки;
- rollOut - курсор выходит за пределы кнопки;
- dragOver - курсор входит в пределы кнопки, при этом была нажата кнопка, и нажата клавиша мыши;
- dragOut - курсор выходит за пределы кнопки, при этом была нажата кнопка, и нажата клавиша мыши;
- keyPress ("клавиша") - была нажата "клавиша". Список клавиш можно посмотреть в справке по Flash (объект Key), или использовать панель параметров для вводу нужной клавиши.
К сожалению, Flash "понимает" только левую клавишу мыши. Правая используется для вызова контекстного меню (щелкните правой клавишей на каком-нибудь Flash мультике). Способов отлавливать во Flash среднюю клавишу или "колесико" (mouse wheel), я пока не встречал, думаю, что их не существует.
Перехватываются эти события с помощью директивы on(). Синтаксис ее таков:
Ниже вы можете сами попробовать вызвать некоторые события:
Очень часто используемый пример - переход по ссылке при нажатии на кнопку:
Чтобы проверить этот сценарий, выделите вашу кнопку, нажмите Ctrl+Alt+A и введите программу.
Вот так просто можно перехватить все события, связанные с кнопкой. Ну а как их использовать - это дело исключительно вашего воображения.
14.3 Операторы
14.3 Операторы составной_оператор: (* список_операторов opt *)список_операторов: оператор оператор список_операторовоператор: описание составной_оператор выражение opt ; if ( выражение ) оператор if ( выражение ) оператор else оператор while ( выражение ) оператор do оператор while (
Переопределение клавиш Soft Key
Переопределение клавиш Soft Key На смартфонах клавиши Soft Key 1 и Soft Key 2 используются для управления меню. Если попробовать переопределить эти клавиши для других задач, то у вас ничего не получится. Дело в том, что события Key_Down не распознаются системой для этих клавиш, если на
3.9.1. Скриншот с помощью клавиатурных комбинаций
3.9.1. Скриншот с помощью клавиатурных комбинаций Скриншоты, созданные с помощью горячих клавиш, автоматически располагаются на рабочем столе в формате PNG с именами Снимок экрана I, Снимок экрана 2 и т. д. Создание снимка сопровождается щелчком фотокамеры. Итак, подробнее:?
8.1. Операторы
Панели
Для просмотра, размещения и редактирования элементов в ролике Flash удобно использовать плавающие панели, которые предлагают команды и настройки, связанные с соответствующим типом элемента. Панели позволяют изменять символы, трансформы, текст, кадры и другие элементы. Кроме того, панели позволяют настроить интерфейс Flash и, например, вывести одни панели поверх других.
Читайте также: