|
|
|||||
Регистрация: Oct 2003
Адрес: Москва
Сообщений: 328
|
Изменение частоты кадров flash-ролика
В ActionScript 3, можно динамически менять частоту кадров (frame rate) ролика используя класс Stage.
Класс Stage (flash.display.Stage) связан со сценой главного ролика и имеет свойство frameRate, которое может принимать значения от 0.01 до 1000, и определяет частоту кадров, с которой Flash плеер проигрывает ролик. Изменять это значение можно на лету. |
|
|||||
Регистрация: Oct 2003
Адрес: Москва
Сообщений: 328
|
Методы класса теперь связаны с областью видимости класса
ActionScript 3 полностью базируется на классах. Создавая классы, вы создаете переменные и функции (методы) которые связаны с экземпляром класса. В отличие от ActionScript 2 методы в ActionScript 3 сохраняют область видимости их класса, даже если вызываются из другого объекта, или через Function.call и Function.apply. Например:
package { import flash.display.Sprite; public class ClassScope extends Sprite { public function ClassScope() { traceThis(); // "Class Instance" var obj:Object = new Object(); obj.traceThis = traceThis; obj.traceThis(); // "Class Instance" traceThis.call(new Sprite()); // "Class Instance" } public override function toString():String { return "Class Instance"; } public function traceThis():void { trace(this); } } } |
|
|||||
Регистрация: Oct 2003
Адрес: Москва
Сообщений: 328
|
Объект Graphics и методы для рисования
Как и в ActionScript 1,2 в ActionScript 3 есть методы для динамического рисования в отображаемых объектах (movie clips, sprites, и т.п.), которые имеют свойство graphics (flash.display.Graphics). Свойство graphics выступает в роли специального слоя для рисования, который расположен под всеми дочерним клипами. Так же в ActionScript 3 добавлены новые методы для рисования прямоугольников (в том числе и со скругленными углами), окружностей и эллипсов:
|
|
|||||
Регистрация: Oct 2003
Адрес: Москва
Сообщений: 328
|
8. Уникальность переменных в классах
В ActionScript 2 переменные со значениями объявленные в теле класса сохранялись в прототипе класса. Из-за этого возникали проблемы с переменными, которые являются ссылками на объекты (например массивы Array):
class myClass{ public var list:Array = [1,2,3]; } var a = new myClass(); var b = new myClass(); trace(a.list === b.list); // true В ActionScript 3 этой проблемы нет, такие переменные будут уникальны. |
|
|||||
Регистрация: Oct 2003
Адрес: Москва
Сообщений: 328
|
Новое поведение MouseMove
В ActionScript 2 событие MouseMove срабатывало глобально, неважно над каким клипом находилась мышка, любой listener от Mouse или любой мувиклип получали событие о перемещении мышки.
В ActionScript 3 для того чтобы получать события от мышки, нужно у интерактивного клипа (InteractiveObject такие как Sprites, MovieClips, Stage) добавить слушателя событий мышки (Listener), но события будут приходить только тогда, когда мышка находится над этим клипом. Для того чтобы получать события мышки в любом месте ролика, нужно добавить Listener к Stage. |
|
|||||
Регистрация: Aug 2004
Сообщений: 16
|
|
|
|||||
Регистрация: Oct 2003
Адрес: Москва
Сообщений: 328
|
14. Класс SimpleButton
В ActionScript 3 появился новый класс SimpleButton (flash.display.SimpleButton). Теперь можно динамически с помощью ActionScript создавать кнопки (Button).
Класс SimpleButton имеет 4 основных свойства, которые управляют возможными состояниями кнопки: upstate (кнопка не нажата), overState (мышка над кнопкой), downstate (кнопка нажата), и hitAreaState (область реагирования на мышку). Необходимо создать визуальные объекты для этих состояний и присвоить их к соответствующим свойствам. |
|
|||||
Регистрация: Aug 2004
Сообщений: 16
|
Последний раз редактировалось Огион; 28.09.2006 в 16:48. |
|
|||||
Регистрация: Oct 2003
Адрес: Москва
Сообщений: 328
|
17. Вспомогательные классы
Один класс описывается в одном .as файле, так было в ActionScript 2 так остается и в ActionScript 3, но теперь есть возможность включать вспомогательные классы в тот же .as файл в дополнение к основному классу.
Вспомогательные классы описываются после блока package и видны только основному классу (или функции) в блоке package, или другим вспомогательным классам, описанным в этом же файле. Запомните, что только один класс может быть описан в блоке package. Вспомогательные классы описываются в этом же файле, но после package и могут использоваться только основным классом. |
Часовой пояс GMT +4, время: 10:13. |
|
« Предыдущая тема | Следующая тема » |
Опции темы | |
Опции просмотра | |
|
|