iralebedeva.ru :: зелёный коллаж с цветами
КОНТАКТЫ
E-mail: ira.alma@gmail.com

iralebedeva.ru :: зелёный коллаж с цветами
опубликовано 10.03.2004 (г. Алма-Ата)
Flash-мастерская зелёных страничек
Лекционные материалы, домашние задания и тесты
дистанционного курса «Электронная школа Macromedia Flash MX»

Уроки информатики (лекционные материалы и практикумы)


ЭЛЕКТРОННАЯ ШКОЛА MACROMEDIA FLASH MX
III курс: Основы программирования в Macromedia Flash MX
Модуль I: Объектно-ориентированное программирование
Язык ActionScript

Экспресс-план модуля:
  • Методология программирования
  • Объектное программирование
  • Материальные и виртуальные объекты. Информационные объекты
  • Предопределённые объекты Macromedia Flash. Язык ActionScript
  • Терминология ActionScript
  • Палитра Actions (действия). Режимы работы
  • Практикум. Разбор скриптов

Методология программирования

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

Такие позиции программирование занимало на заре развития компьютерной информатики, на рассвете структурного программирования. На программиста смотрели как на шамана. Стать программистом было так же сложно, как космонавтом, и почти столь же почётно.

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

Объектное программирование

Объектно-ориентированное программирование (ООП) — современный способ создания программных кодов, который пришёл на смену структурному программированию. Вернее, объектное программирование не заменило структурное, а довело его до логического совершенства.

В объектно-ориентированных языках можно конструировать не только данные, но данные плюс процедуры (функции):

объект = данные + процедуры (объект = свойства + алгоритмы)

Объектом в информатике, как и всюду, называют всё, что угодно: число, таблицу, исполнителя, программу, кнопку на экране...

Однако информатика рассматривает объекты с точки зрения информационных процессов. В таком подходе нет ничего удивительного: каждая наука рассматривает объекты со своей точки зрения. Физик, наблюдая полёт пчелы, мысленно прикидывает формулы, которые описывают траекторию движения насекомого. Биолог задумывается о числе глаз, крыльев и ножек. Информатик наблюдает за тем, как своим «танцем» пчела передаёт информацию сородичам о полях медоносных растений.

Обычно информатик выделяет в объекте три составляющие:

  • Какую информацию объект хранит (свойства объекта, данные объекта)?
  • Как объект обрабатывает информацию (алгоритмы объекта, процедуры объекта)?
  • Какую информацию объект передаёт и принимает (события объекта)?

Исследуем обычный телевизор как информационный объект.

Телевизор как информационный объект        Свойства (данные):
       цвет: серебристый;
       диагональ экрана: 53 см;
       вес: 20 кг.

       Алгоритмы (процедуры):
       включение/выключение: кнопка (I);
       переключение программ: кнопки (-), (+) блока PRG;
       регулирование звука: кнопки (-), (+) блока ¤.

       События:
       приём телепередачи;
       передача изображения и звука зрителю.

Материальные и виртуальные объекты

Телевизор — это материальный объект. Слово «материальный» означает «реальный», существующий на самом деле. Корпус телевизора сделан из пластика, гладкого на ощупь. Телевизор достаточно тяжёлый — не надо ронять его на ногу: будет больно. Если по телевизору стукнуть молотком, то, скорее всего, он выйдет из строя.

Рассмотрим телевизор изображённый на фотографии в этой лекции. Этот телевизор, конечно, не является материальным (реальным) телевизором. Его нельзя потрогать, понюхать. Он не может упасть на пол. Телевизор на фотографии — это виртуальный объект, то есть не реальный, не существующий на самом деле.

Информационные объекты

Понятие информационного объекта очень удобно для пользователей.

Для того чтобы посмотреть передачу по телевизору, не нужно знать, каким образом на экране возникает изображение и почему этот пластмассовый ящик говорит подобно человеку. Пользователю нужно только знать, как включить телевизор, как настроить его на нужную программу и как установить желаемую громкость звука. Иными словами, пользователь должен знать алгоритмы объекта и уметь ими пользоваться.

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

Менять свойства телевизора мы не можем, но можем их учитывать. А вот свойства виртуальных объектов менять легко.

Современное программирование — объектно-ориентированное. Это означает, что программа, которой предстоит работать на компьютере, создаётся как набор информационных объектов.

Объекты имеют свойства — ячейки памяти для хранения информации и алгоритмы, которые обрабатывают события, — информацию, поступающую от других объектов. Программа, составленная из объектов, не имеет одного общего алгоритма, а работает в результате информационного взаимодействия объектов.

Всё происходит так, как в реальной жизни. Ведь мир вокруг нас состоит из отдельных объектов (людей, животных, предметов, явлений), которые существуют по своим собственным правилам. А общее развитие мира определяется тем, как отдельные объекты взаимодействуют друг с другом.

Объект и экземпляр объекта

Вообще говоря, конкретный телевизор в терминологии ООП — это не объект, а экземпляр объекта. Объектом является комплект документации на заводе, по которой изготовляются телевизоры. Все телевизоры, которые сходят с конвейера, имеют одни и те же свойства и одни и те же алгоритмы управления.

То же и в программировании. Объект — это шаблон. Экземпляр объекта — это рабочая копия.

Предопределённые объекты Macromedia Flash. Язык ActionScript

У тех, кто только начинает работать в Macromedia Flash, может возникнуть иллюзия того, что к объектам мы можем отнести любой графический элемент, находящийся на сцене. Действительно, графические элементы можно перемещать, копировать, удалять, преобразовывать, стыковать, выравнивать, группировать… Они имеют определённые нами в процессе рисования свойства: цвет, размер, форму… Однако термин объект используется в языке программирования ActionScript в другом значении. Самым значимым объектом в Macromedia Flash является объект клип — MovieClip.

Для того чтобы составить некое представление о предопределённых объектах Macromedia Flash сделаем краткий обзор некоторых из них. Обратите внимание, что эти объекты могут быть использованы для доступа и манипулирования некоторыми типами информации:

Объект Math — набор встроенных математических констант и функций: cos (косинус), sin (синус), atan (арктангенс), abs (абсолютное значение числа)…
Объект Sound — позволяет добавлять звуки к клипу и управлять ими во время проигрывания клипа. Например, можно регулировать громкость (setVolume) или баланс (setPan).
Объект Mouse — позволяет скрывать стандартный курсор, чтобы можно было использовать какой-то другой.
Объект MovieClip — позволяет управлять клипом. Клип имеет свойства (например, _height, _rotation, _totalframes) и методы (play, loadMovie или duplicateMovieClip).

Терминология ActionScript

Как и любой скриптовый язык, ActionScript использует специфическую терминологию, соответствующую специфическим правилам синтаксиса. Следующий список предоставляет введение в важнейшие термины ActionScript.

Actions (команды) — операторы, которые дают инструкции клипу, что ему делать во время воспроизведения. Например, gotoAndStop переводит воспроизведение на определенный кадр.
Arguments (аргументы), также называются параметрами — позволяют передавать значения функциям.
Classes (классы) — типы данных, которые можно создавать для определения новых типов объектов. Для определения класса объектов, создаются функции-конструкторы.
Constants (константы) — неизменяемые элементы. Например, константа Math.PI всегда имеет определённое значение. Константы полезны для сравнения значений.
Constructors (конструкторы) — функции, используемые для определения свойств и методов класса.
Data types (типы данных) — набор значений и операций. Строки, числа, true и false (булевы) значения, клипы — всё это типы данных ActionScript.
Events (события) — действия, происходящие во время воспроизведения клипа. Например, различные события происходят при загрузке клипа, когда плеер воспроизводит кадр, пользователь щёлкает на кнопке в клипе или нажимает кнопку на клавиатуре.
Expressions (выражения) — любые части операторов, имеющих значения. Например, 2 + 2 это выражение.
Functions (функции) — блоки многократно используемого кода, которым могут быть переданы аргументы (параметры) и которые могут вернуть значения. Например, функции getProperty передаются имя свойства и имя клипа, а возвращается значение этого свойства. Функция getVersion возвращает версию Flash Player, воспроизводящего клип.
Handlers — специальные команды, управляющие событиями, такими как mouseDown или load.
Identifiers (идентификаторы) — имена, используемые для обозначения переменных, свойств, объектов, функций и методов. Первый символ должен быть буквой, знаком подчеркивания (_) или знаком доллара ($). Любой следующий символ должен быть буквой, знаком подчеркивания (_), цифрой или знаком доллара ($). Например, имя переменной firstName.
Instances (экземпляры) — объекты, принадлежащие к определённому классу. Каждый экземпляр класса содержит все свойства и методы этого класса. Все клипы — экземпляры со свойствами (например, _alpha и _visible) и методами (например, gotoAndPlay и getURL) класса MovieClip.
Instance names — уникальные имена, позволяющие указывать экземпляр клипа в скриптах. Например, исходный символ в библиотеке может быть назван counter, а его два экземпляра могут иметь имена scorePlayer1 и scorePlayer2.
Keywords (ключевые слова) — зарезервированные слова, имеющие специальное значение. Например, var — ключевое слово, используемое для объявления локальных переменных.
Methods (методы) — функции, присущие объекту. После того, как функция определена, она может быть вызвана, как метод этого объекта.
Objects (объекты) — коллекции свойств, каждый из которых имеет своё имя и значение. Объекты обеспечивают доступ к различным типам данных. Например, предопределенный объект Date предоставляет информацию от системных часов.
Operators (операторы) — вычисляют новые значения из одного или более значений. Например, оператор сложения (+) складывает два или более значения для получения нового значения.
Properties (свойства) — атрибуты, определяющие объект. Например, _visible — свойство всех клипов, которое определят, видим клип или нет.
Variables (переменные) — идентификаторы, которые содержат значение любых типов данных. Переменные могут быть созданы, изменены и обновлены. Значения, которые они содержат, могут быть запрошены для использования в скрипте.

***

Возможности языка ActionScript настолько всеобъемлющи, что охватить их в рамках работы данного курса просто нереально, поэтому мы ограничимся описанием основных концепций языка и общих правил построения скриптов на ActionScript.

ActionScript позволяет создавать скрипты для клипа (символ типа Movie Clip), кнопки (символ типа Button) или ключевого кадра (Keyframe). Каждый такой скрипт (то есть фактически программа на языке ActionScript) жёстко связан с соответствующим элементом ролика. При публикации ролика текст скрипта, как и другие элементы фильма, экспортируется в swf-файл. Тем не менее, при желании вы можете сохранить его в отдельном файле с расширением as (это обычный текстовый файл), чтобы впоследствии использовать в каком-либо другом фильме.

Палитра Actions (действия)

Палитра Actions (действия) позволяет создавать и редактировать скрипты для объектов (клипов и кнопок), а также ключевых кадров. Можно выбирать заранее определённые команды из списка команд — Toolbox list (в левой части палитры), перетаскивать их в правую часть панели; использовать кнопки расположенные над текстовым полем для выбора команды, её удаления и перестановки команд.

Нормальный и экспертный режим (Normal Mode, Expert Mode)

В Normal Mode (нормальный режим) можно писать команды, используя поля параметров (аргументов).

В Expert Mode (экспертный режим) можно писать и редактировать команды прямо в текстовом поле, как в обычном текстовом редакторе.

В ходе создания скрипта путём выбора команд из списка, вы должны обратить внимание на то, что эти команды систематизированы по категориям:

Actions (команды) — процедуры языка ActionScript, имеющие «универсальный» характер, то есть не зависящие от особенностей класса объектов (в отличие от методов объектов, принадлежащих конкретному классу); в эту же категорию входят традиционные для большинства языков программирования высокого уровня операторы логического управления (проверки логических условий, организации цикла и т. п.).

Выбора команд из списка (Toolbox list)

Operators (операторы) — операторы логических и арифметических операций (сложение, вычитание, сравнение и т.п.).

Functions (функции) — предопределенные (библиотечные) функции (например, в их число входит функция проверки номера версии Flash-плеера).

Constant (константы).

Properties (свойства) — свойства объектов, не зависящие от класса (например, уровень прозрачности изображения).

Objects (объекты) — предопределённые объекты, которые могут быть использованы в сценарии (например, существует объект для работы с датой и временем); в этот же раздел включаются пользовательские классы объектов.

Deprecated (осуждаемые) — конструкции, которые не рекомендуется использовать в скриптах (как устаревшие).

Flash UI Components (компоненты пользовательского интерфейса).

Кроме перечисленных разделов, в списке Action Toolbox имеется также раздел Index, который содержит алфавитный перечень всех компонентов языка.

Подсветка и проверка синтаксиса

Система подсветки синтаксиса окрашивает определённые элементы ActionScript в разные цвета.

Ключевые слова и предопределённые идентификаторы (например, gotoAndStop, play и stop) подсвечиваются тёмным синим цветом.

Комментарии подсвечиваются бледным серым цветом.

Строки, окружённые кавычками, ярким синим цветом.

Подсветка и проверка синтаксиса (Check Syntax) В нормальном режиме все синтаксические ошибки подсвечиваются сплошным красным фоном в окне скриптов. Это упрощает проблему нахождения ошибок. Если вы наведёте курсор мыши на команду с ошибкой, появится подсказка, которая покажет сообщение об ошибке, ассоциированное с этой командой. Когда вы выберите эту команду, сообщение об ошибке также появиться в строке состояния панели параметров.

Для проверки текущего скрипта на наличие ошибок, следует использовать раздел Check Syntax из выпадающего меню в правом верхнем углу палитры Actions или соответствующую кнопку (галочка голубого цвета в Expert Mode).

Практикум. Разбор скриптов
Ролик №1



Перед вами очень скромный ролик, в котором организована работа гиперссылок. Текстовой блок, присутствующий в ролике, представляет собой статический текст, для которого в палитре Properties определены следующие свойства:

Палитра Properties: Свойства статического текста

В раздел URL link записан адрес документа. В разделе Target вы указываете окно или фрейм, в который должен быть загружен запрошенный документ. В данном ролике документ будет загружен в новое окно браузера.

Для кнопки создаём скрипт, используя палитру Actions. Для этого выделяем кнопку с помощью инструмента Arrow и разворачиваем палитру Actions.

Палитра Actions: команда getURL для кнопки

Для того чтобы использовать в своей работе команду getURL обратитесь к категории Actions > Browser/Network > getURL. Затем, обратившись к полям параметров, определитесь с адресом документа…
Прокомментирую подробнее некоторые нюансы работы с палитрой Actions в этом ролике.

Параметр Window задаёт окно или фрейм, в который должен быть загружен запрошенный документ. Значение параметра выбирается с помощью раскрывающегося списка, который содержит следующие варианты (они аналогичны значениям атрибута target тэга <a> в языке HTML):

_self — документ будет загружен в текущее окно, или фрейм;
_blank — документ будет загружен в новое окно;
_parent — документ будет загружен в родительский или текущий фрейм;
_top — документ будет загружен во фрейм более высокого уровня иерархии или в текущее окно.

При необходимости значение данного параметра может быть получено как результат вычисления выражения. В этом случае следует установить флажок Expression (выражение), расположенный справа от списка Window.

Параметр Variables позволяет указать способ пересылки данных по заданному URL. Значение параметра выбирается из раскрывающегося списка, который содержит три варианта:

Don't send (не отправлять) — пересылка данных не требуется;
Send using GET (отправить, используя GET) — для пересылки данных будет использован метод GET;
Send using POST (отправить, используя POST) — для пересылки данных будет использован метод POST.

Напомню, что различие в использовании методов GET и POST для пересылки данных на сервер состоит в том, что при первом из них пересылаемые данные присоединяются к строке адреса. Поскольку длина адреса ограничена 256 символами, то ограничен также и объём пересылаемых данных.

Обратите внимание на то, что команда getURL была автоматически помещена в фигурные скобки некой on(release). Дело в том, что когда вы назначаете действие кнопке или клипу, Flash автоматически генерирует специальную управляющую процедуру (handler), которая во многих объектно-ориентированных языках называется «обработчик события» (или «селектор»). Обработчик проверяет, произошло ли событие определённого типа, и если да, то инициирует соответствующую последовательность действий, заключённых в фигурные скобки.

Для кнопок обработчик имеет имя on, а для клипов — onClipEvent. Имя обработчика предшествует списку событий, на которые обработчик должен реагировать. Например, конструкция:
on(release, KeyPress:"A")
означает, что обработчик должен реагировать на события двух типов: release (кнопка мыши отжата) и KeyPress:"A" (на клавиатуре нажата клавиша "А").

Для кнопок в языке ActionScript предусмотрены следующие типы событий:

Press — пользователь нажимает кнопку мыши, когда указатель находится над изображением кнопки (фильма).

Release — пользователь нажимает и затем отпускает кнопку мыши (указатель находится над изображением кнопки).

Release Outside — пользователь отпускает кнопку мыши, когда указатель не находится над изображением кнопки.

Key Press — пользователь нажимает определённую клавишу на клавиатуре; для данного события необходимо дополнительно указать клавишу.

Roll Over — пользователь перемещает указатель над изображением кнопки.

Roll Out — пользователь перемещает указатель за пределы изображения кнопки.

Drag Over — пользователь нажимает кнопку мыши, когда указатель находится над кнопкой, выводит его за пределы кнопки, и затем опять устанавливает над кнопкой.

Drag Out — пользователь нажимает кнопку мыши, когда указатель находится над кнопкой, и затем выводит его за пределы кнопки.

Чтобы изменить перечень событий, на которые должен реагировать объект ролика, необходимо щёлкнуть мышью в строке сценария, в которой записано имя обработчика. При этом изменится формат окна параметров, и в нём появится группа флажков, с помощью которых можно выбрать требуемые события. Сделанный выбор сразу же отображается в окне сценария.

Группа флажков, с помощью которых можно выбрать требуемые события

И последнее, в ролике работает только один кадр и один слой.

Ролик №2



В этом ролике мы с вами научимся прописывать акции и кнопке и кадру и клипу.

Для комфортной работы в ролике вам следует создать три слоя.

Палитра Timeline: три слоя (слой с акцией)

Слой action. В этом слое, как впрочем, и во всех остальных только один кадр, он пуст, является ключевым и ему прописан скрипт:

fscommand("showmenu", "false");
fscommand("fullscreen", "true");

Эти строчки определяют поведение вашего ролика в процессе проигрывания. Первая строка позволяет убрать меню в плеере (это очень важно, когда ваш ролик представляет собой программу тестирования, и пользователь должен быть лишён права сделать шаг назад Control > Step Back). Вторая строка разворачивает ваш ролик на весь экран. Для того чтобы прописать эти строки вам необходимо встать на это кадр и обратиться к категории Actions > Browser/Network > fscommand.

Слой penguin. На этом слое расположены блоки статического и динамического текста, кнопка и клип. Блоки статического текста выделены зелёным цветом, блоки динамического текста красным цветом.

Во-первых, определимся с блоками динамического текста. Для создания блока динамического текста используется уже хорошо знакомый вам инструмент Text. Однако содержимое блока остаётся пустым. Заполнение этих блоков данными мы поручим кнопке. Размер блоков можно будет подкорректировать в процессе отладки ролика. Каждому блоку динамического текста необходимо присвоить имя. Обратите внимание на палитру Properties. В разделе Text Type выберите Dynamic Text, в разделе Var (Variable) определите имя блока.

Свойства динамического текста

Например, в этом ролике для динамического блока, расположенного напротив статического текста «ширина экземпляра» определено имя w, для высоты экземпляра h, имени экземпляра n, координаты точки регистрации экземпляра два блока x и y. Обратите внимание, что блоки динамического текста Flash выделяет пунктирной линией.

Блоки динамического текста ролика

Во-вторых, создадим клип, в который будет помещён графический элемент — пингвин. В этом ролике это импортированная графика в формате wmf. После того как графика будет импортирована, используем команду Convert to Symbol и превратим её в клип (символ типа Movie Clip), назовём его, к примеру, penguin_vl. Клип будет автоматически помещён в библиотеку ролика, а вот со сцены его следует удалить. Следующий шаг это создание нового клипа. Используем команду New Symbol, назовём этот клип penguin_or. В первом кадре этого клипа, используя библиотеку ролика, поместите экземпляр клипа penguin_vl (именно ему в последующем мы пропишем скрипт). Добавьте в клип ещё один ключевой кадр.

Палитра Timeline: слой для клипа
Палитра Properties: свойства клипа

Вернитесь на сцену и поместите на неё экземпляр клипа penguin_or. И не просто поместите, а пропишите его на сцене. Для этого обратитесь к палитре Properties, и в разделе Instance Name укажите имя экземпляра, например penguin (впрочем, ваше право, дать ему то имя, которое вы пожелаете, не забывайте только правила формирования имён в ActionScript). Теперь произведём редакцию клипа, экземпляр которого был помещён на сцену, используем для этого команду Edit. Клипу в первом кадре пропишем скрипт:

onClipEvent (load) {
    setProperty("_root.penguin", _alpha, random(50)+50);
}

Команда setProperty позволяет изменять свойство экземпляра клипа во время воспроизведения ролика. Давайте попробуем разобраться в синтаксисе, используя общий формат команды:

setProperty(target, property, expression);

target — это путь к экземпляру клипа, чьё свойство нужно изменить (_root.penguin, зная путь к экземпляру, мы обращаемся к нему по имени, которое мы присвоили ему в палитре Properties).

property — свойство, которое нужно изменить (_alpha, в нашем случае это прозрачность экземпляра).

Флажок Expression expression — значение, присваиваемое свойству (random(50)+50, случайное число от 50 до 100). Обязательно установите флажок Expression. Так как значение данного параметра должно быть получено как результат вычисления выражения.

Для того чтобы обеспечить постоянное изменение прозрачности клипа-пингвина в ходе проигрывания ролика мы создали два кадра. Напомню, что только в первом кадре клипу был прописан скрипт. Второй кадр можно оставить пустым, но при этом пингвин будет не мерцать, а очень неприятно мигать. Обязательно поэкспериментируйте с роликом и убедитесь в правоте моих слов.

И ещё, почему перед именем экземпляра прописанного на сцене стоит _root?

Когда вы будете работать с командой setProperty для указания пути к объекту, вам необходимо будет обратиться к кнопке Insert a target path (эта кнопка похожа на прицел). При этом перед вами откроется окно Insert a target path с помощью которого вы можете описать путь назначения (то есть адрес).

Описание пути назначения : Окно Insert a target path

Это окно содержит следующие основные элементы интерфейса:

Дерево фильма, отражающее иерархию объектов фильма, к которым возможно обращение из скрипта.

Поскольку при обращении к объекту используется имя соответствующего экземпляра (кнопки, клипа, текстового поля), то в дерево включаются только поименованные (прописанные на сцене) экземпляры.

Корневой элемент дерева зависит от способа адресации: для абсолютного адреса — это ключевое слово _root (то есть основной фильм), для относительной — слово this (то есть текущая временная диаграмма).

Многострочное текстовое поле Target (назначение), предназначенное для ввода и корректировки пути назначения; если выбрать в дереве фильма некоторый элемент, то в поле Target появится соответствующий маршрут, который может быть изменен или дополнен вручную.

Пара переключателей Mode (режим), которые позволяют выбирать способ адресации (относительный — Relative или абсолютный — Absolute). По умолчанию используется относительная адресация.

Пара переключателей Notation (нотация), которые позволяют выбирать формат записи пути назначения: вариант Dotes (точки) означает применение точечной нотации; вариант Slashes (слэши) соответствует записи с использованием слэшей (это «устаревший» стиль, используемый для совместимости с предыдущими версиями ActionScript). При использовании слэшей формат записи аналогичен тому, который применяется для записи URL в HTML-документах.

Продолжим работу над роликом.

На этот же слой нужно поместить кнопку. В этом ролике я воспользовалась библиотекой Flash.

Кнопке прописываем скрипт:

on (release) {
    w = getProperty(_root.penguin, _width);
    n = getProperty(_root.penguin, _name);
    h = getProperty(_root.penguin, _height);
    x = getProperty(_root.penguin, _x);
    y = getProperty(_root.penguin, _y);
}

Функция getProperty возвращает значение указанного свойства указанного клипа. Давайте попробуем разобраться в синтаксисе, используя общий формат команды:

getProperty(instancename, property);

instancename — имя экземпляра клипа, свойство которого необходимо получить.

property — имя свойства клипа.

Для того чтобы присвоить w значение, вычисляемое функцией вам необходимо обратиться к категории Action > Variables > set variable.

Палитра Actions: Функция getProperty

Слой ramka. Это слой с декорациями.

Протестируйте ролик и если это необходимо произведите его коррекцию. Поэкспериментируйте со свойствами.

Домашнее задание: Основы программирования в Macromedia Flash MX

В домашних заданиях этого курса будут звучат замечательные афоризмы.

Наше знание похоже на шар, чем больше оно становиться, тем больше у него точек прикосновения с неизвестным.
Ефремов Иван Антонович

Продублируйте ролики, представленные в этой лекции.

Выполненное задание представьте в виде файлов в формате fla (если суммарный размер файлов превысит 150 Кб, пожалуйста, упакуйте файлы в архив) и вышлите учителю.

Тест: Основы программирования в Macromedia Flash MX

В материалы теста входят вопросы, которые позволят вам проверить прочность знаний полученных в ходе работы над первым модулем курса.
Тест создан в Macromedia Flash MX и представляет собой интерактивный flash-ролик: Загрузить тест в новом окне.

Желаю Вам успехов в самостоятельном изучении Macromedia Flash MX!


Следующий модуль:
Модуль II. Ввод и вывод информации


Программа II курса: Основы создания анимации в Macromedia Flash MX
§ Модуль I: Основы создания анимации, Покадровая анимация
§ Модуль II: Символы и экземпляры, Анимация типа Motion
§ Модуль III: Анимация типа Shape, Озвучивание анимации
§ Модуль IV: Слой-маска, Анимированная маска. Редактирование анимации
§ Модуль V: Анимированная кнопка, Сцены, Тестирование загрузки ролика




ваш комментарий *
 
ваше имя

защитный код (цифры с картинки) *







statistics
Рейтинг@Mail.ru       Яндекс.Метрика

Распространение материалов сайта приветствуется.
Ссылка на материалы весьма желательна, но не строго обязательна ;-)
«Знание должно служить творческим целям человека. Мало накоплять знания;
нужно распространять их возможно шире и применять в жизни». Рубакин Н.А.