Февраль 2011
Руководство по actionscript. часть 7, стр. 041
IoErrorListener);
// Значок «нужна пища» foodHungry = new Loader( );
foodHungry.1oad(new URLRequest(«food-hungry. gif»)); foodHungry. contentLoaderInfо. addEventLi stener(Event. COMPLETE.
completeListener); foodHungry. contentLoaderInfо. addEventLi stener(IOErrorEvent. I0_ERR0R.
ioErrorListener);
foodHungry. x = 15; foodHungry. у = 100;
// Значок «очень нужна пища» foodStarving = new Loader( );
foodStarving.1oad(new URLRequest(«food-starving. gif»)); foodStarvi ng. contentLoaderlnfo. addEventLi stener(Event. COMPLETE.
Руководство по actionscript. часть 7, стр. 042
CompleteListener); foodStarvi ng. contentLoaderlnfo. addEventLi stener(IOErrorEvent. I0_ERR0R.
ioErrorListener);
foodStarving. x = 15; foodStarving. у = 100;
}
// Вызывается при изменении состояния животного private function petStateChangeListener (e:Event):void { // Если животное умерло…
if (pet. getPetState( ) == Virtual Pet. PETSTATE_DEAD) { // …блокируем кнопки для кормления disableUK );
}
// Обновляем графику, чтобы отразить новое состояние животного renderCurrentPetState( );
}
// Получает текущее состояние животного и отображает его на экране private function renderCurrentPetState ( ):void { // Удаляем все изображения
for (var i:int = graphicsContainer. numChildren-1; i >= 0; i—) { graphicsContainer. removeChi1dAt(i);
}
// Получаем текущее состояние животного var state:int = pet. getPetState( );
// Отображаем подходящее изображение switch (state) { case Virtual Pet. PETSTATEJULL:
graphi csContai ner. addChi1d(petAli ve); break;
case Virtual Pet. PETSTATE_HUNGRY: graphi csContai ner. addChi1d(petAli ve); graphi csContai ner. addChi1d(foodHungry); break;
case Vi rtualPet. PETSTATE_STARVING: graphi csContai ner. addChi1d(petAli ve); graphi csContai ner. addChi1d(foodStarving); break;
case Virtual Pet. PETSTATE_DEAD: graphi csContai ner. addChi1d(petDead); break;
}
}
// Вызывается при изменениях в имени животного private function petNameChangeListener (e:Event):void {
// Обновляем имя животного на экране
renderCurrentPetName( );
}
// Получает текущее имя животного и отображает его на экране private function renderCurrentPetName ( ):void { petName. text = pet. getName( );
}
// Вызывается при нажатии кнопки «Feed Applе» private function appleBtnClick (e:MouseEvent):void {
// Кормим животное яблоком
pet. eat(new Apple( ));
}
// Вызывается при нажатии кнопки «Feed Sushi» private function sushiBtnClick (e:MouseEvent):void {
// Кормим животное суши
pet. eat(new Sushi( ));
}
// Вызывается при завершении процесса загрузки изображений private function completeListener (e:Event):void { // Увеличиваем (на единицу) общее количество загруженных изображений numGraphicsLoaded++; // Если все изображения загружены… if (numGraphicsLoaded == numGraphicsToLoad) {
// …отображаем подходящее изображение, а затем рассылаем событие
// Event. COMPLETE, которое обозначает, что данный объект
// VirtualPetView готов к использованию
renderCurrentPetState( );
renderCurrentPetName( ); dispatchEvent(new Event(Event. COMPLETE));
}
}
// Вызывается при невозможности загрузки изображения private function ioErrorListener (е:IOErrorEvent):void {
// Отображаем отладочное сообщение, описывающее суть проблемы загрузки
traceCLoad error: » + е);
}
}
}
В листинге П. 10 продемонстрирован код для класса FoodButton, который представляет простую интерактивную кнопку-текст.
Руководство по actionscript. часть 7, стр. 043
Листинг П. 10. Класс FoodButton
package zoo { import flash. display.* import flash. events.*; import flash. text.*;
// Класс FoodButton представляет простую интерактивную кнопку-текст public class FoodButton extends Sprite {
// Отображаемый текст кнопки
private var text:TextField;
// Форматирование текста, когда указатель мыши находится не над // кнопкой
private var upFormat:TextFormat;
// Форматирование текста, когда указатель мыши находится над кнопкой private var overFormat:TextFormat;
// Конструктор
public function FoodButton (label:String) { // Активизирует указатель мыши «рука» для операций с этим объектом // (переменная buttonMode наследуется от класса Sprite). buttonMode = true;
// Отключаем события мыши для детей данного объекта // (переменная mouseChildren наследуется от класса // DisplayObjectContainer.) mouseChildren = false;
// Определяем форматирование текста для ситуации, когда указатель мыши
// находится не над данным объектом
upFormat = new TextFormat(«_sans».12.0×006666.true);
// Определяем форматирование текста для ситуации, когда указатель мыши
// находится над данным объектом
overFormat = new TextFormat(«_sans».12.0×009999.true);
// Создаем текстовое поле-кнопку и добавляем его в иерархию // отображения данного объекта text = new TextField( );
text. defaultTextFormat = upFormat: text. text = label;
text. autoSize = TextFieldAutoSize. CENTER: text. selectable = false; addChild(text);
// Регистрируем приемник для получения уведомлений о перемещении
// указателя мыши над данным объектом
addEventListener(MouseEvent. M0USE_0VER. mouseOverListener):
// Регистрируем приемник для получения уведомлений о выходе указателя
// мыши за пределы данного объекта
addEventListener(MouseEvent. M0USE_0UT, mouseOutListener);
}
// Отключает уведомления о событиях мыши для данного объекта public function disable ( ):void {
// (Переменная mouseEnabled наследуется от класса InteractiveObject.)
mouseEnabled = false;
}
// Вызывается, когда указатель мыши перемещается над данным объектом public function mouseOverListener (e:MouseEvent):void {
// Применяем текстовый формат «под указателем мыши»
text. setTextFormat(overFormat);
}
// Вызывается, когда указатель мыши выходит за пределы данного объекта public function mouseOutListener (e:MouseEvent):void {
// Применяем текстовый формат «не под указателем мыши»
text. setTextFormat(upFormat);
}
}
}
Алфавитный указатель
! (оператор логического НЕ) 98
! (противоположное логическое значение) 224
!= (оператор условия неравенства) 226
&& (логическое И) 97
&& (оператор логического И) 227
& (оператор побитового И) 226
&= (оператор побитового И с присвоением) 228
( ) (оператор круглых скобок) 66, 223
(=) (оператор присвоения значения переменной) 227
.. (оператор «потомок» расширения Е4Х) 435
/* и 7 47
//(двойной слэш) 47
? (условный оператор) 80
@* (символ атрибутов расширения Е4Х) 422
[ ] (квадратные скобки) 426
А (оператор побитового исключающего ИЛИ) 227
А= (побитовое исключающее ИЛИ с присвоением) 228
{} (фигурные скобки) 43, 45,48
в литералах ХМ L 412
проблемы в интерфейсах 207
{х у} (объект с динамическими переменными) 223
| (оператор побитового ИЛИ) 227
|= (оператор побитового И с присваиванием) 228
|| (логическое ИЛИ) 95
|| (оператор логического ИЛИ) 227
~ (оператор побитового НЕ) 224
+ (оператор конкатенации) 83
+= (оператор сложения
с присваиванием) 68, 227, 777
< (оператор «меньше чем») 82, 225
« (оператор сдвига влево) 225
«- (оператор сдвига влево) 228
<- (оператор «меньше чем или равно») 225
= (знак равенства) 53
== (оператор равенства) 82
=== (оператор строгого равенства) 86
» (оператор сдвига вправо) 225
»= (оператор сдвига вправо) 228
»> (оператор
беззнакового сдвига вправо) 225
»>= (оператор
беззнакового сдвига вправо) 228
А
ABC (байт-код ActionScript) 38
ActionScript 19
развитие языка программирования 328
управление графическим содержимым в прошлой версии 519
addChildAt( ), метод 532
ADDЕD_TO_STAGE, событие 555
addedListener( ), метод 707
addedToStageListener( ), метод 673
addEventListener( ), метод 247, 249, 260, 269, 567
параметр useCapture 571
параметр
«использоватьСлабуюСсылку» 265
addObject( ), метод 211
addShape( ), метод 157
Adobe AIR в сравнении с Flash Player 767
Adobe Flash 19,25
Adobe Flex 2 SDK 26
Adobe Flex Builder 26
allowDomain( ), метод 283,475, 504
allowInsecureDomain( ), метод 506
AnonymousListener, класс 262
AntiAliasType, класс 769
API (Application Programming Interface) 70
API отображения 519
базовые классы отображения 519
корневой объект 522
пользовательские классы отображения 523
потомки и предки, объекты 522
расширение иерархии 523
вспомогательные классы отображения 520
глубина отображаемого объекта 531
графическое содержимое 519
дети, удаление 538
контейнеры 522
обход объектов в иерархии отображения 541
пользовательские графические классы 561
события контейнеров 549
список отображения 523
удаление элементов из памяти 537
appendText( ), метод 777
Application Programming Interface (API) 70
applyFilter( ), метод 758
as, оператор 193, 226
attackEnemy( ), метод 307
attribute( ), метод E4X 422
attribute( ), метод XML 413, 426
Automatically declare stage instances, флажок 921,922
autoSize, переменная 773
AVM (ActionScript virtual machine) 38
в
BasicShape, класс 706
подкласс Ellipse 710
подкласс Polygon 711 Bitmap, класс 519,521 BitmapData, класс 718
applyFilter( ), метод 757
clone( ), метод 743
colorTransform( ), метод 757
compare( ), метод 734
copyChannel( ), метод 743
copyPixels( ), метод 742
draw( ), метод 742
nllRect( ), метод 741
floodFill( ), метод 741
getColorBoundsRect( ), метод 734
getPixel32( ), метод 727
getPixel32( ), метод, в сравнении с getPixel( ) 728
getPixels( ), метод 732
hitTest( ), метод 734
lock( ), метод 735
merge( ), метод 743
noise( ), метод 757
paletteMap( ), метод 758
perlinNoise( ), метод 757
pixelDissolve( ), метод 758
scroll( ), метод 741
setPixel( ), метод 724, 734
setPixel32( ), метод 724, 734
setPixel32( ), метод класса ScribbleAS3 736
setPixels( ), метод 724, 734, 739
threshold( ), метод 758
объекты, связь с объектом Bitmap 724
представление одного и того же объекта Bitmap 724
создание объекта 723
ButterflyGame, класс 263 Button (Кнопка), символ 912 ByteArray, объект 733
с
copyPixels( ), метод 752
D
DataGrid, класс 395
DisplayObject, класс 520
подклассы 521
события Event. ADDED и Event. REMOVED 555
draw( ), метод 743
ScribbleAS3, версия с неотображаемыми векторами 748
параметры 743
растеризация и растворение объекта TextField 746
Е
Е4Х (ECMAScript for XML) 407
выражения расширения и результаты 431
методы обращения классов XML и XMLList 413
незначащие пробелы 408
оператор «потомок» (..) 435
преобразование в строки объектов XML и XMLList 460
равенства, определение 463
создание XML-данных 411
создание нового содержимого XML 442
добавление новых атрибутов и элементов 445
добавление новых детей 446
замена всего элемента 444
изменение значений атрибута 443
изменение содержимого элемента 442
ссылки на части документа, обновление 450
сущности XML для специальных символов 450
удаление элементов и атрибутов 449
типы данных XML и XMLList 409
фильтрация XML-данных 438
метод hasOwnProperty( ) 440
оператор фильтрующего предиката 438
eat( ), метод 67, 70
параметр numberOfCalories 72
подпись 77
F
FIFO-стек 238
G
Graphic (Графика), символ 912
н
hasChanged( ), метод 707
hitListener( ), метод 584
hitTest( ), метод 734
HTML-форматирование текста 791
взаимосвязь переменных text и htmlText 797
заключение в кавычки значений атрибутов 796
нераспознанные теги и атрибуты 798
поддерживаемые сущности 796
теги и атрибуты, поддерживаемые ActionScript 792
I
in, оператор 226 instanceof, оператор 226 is, оператор 226
j
JIT (динамическая компиляция) 39
L
LIFO-стек 238
Loader, класс 522, 836, 837
М
MorphShape, класс 521 Movie Clip (Клип), символ 912 композиционный подход 931 связанные классы 913
О
Object 144,181 класс 144 типданных 181
р
push( ), метод 237
Q
QName, класс 465
R
REMOVEDFROMSTAGE, событие 555
s
Shape, класс 521
рисование с помощью векторов 698
SlidingText, класс 694
Socket, класс 873
Sprite, класс 519, 522
StaticText, класс 521,768
StyleSheet, класс 799
и
URLLoader, класс 453 URLRequest, класс 453 URLRequest, объект 838
v
Video, класс 521 VirtualPet, класс 45 атрибуты 46
добавление функции 138 код 168
конфликты имен переменных/ параметров 102
параметр конструктора name 60
переменная экземпляра creationTime 74
переменная экземпляра currentCalories 66
переменная экземпляра pet 65
переменная экземпляра petName 55
статические переменные 116
VirtualPet, объект
время создания 74
создание 50
«переменная экземпляра» pet 55 VirtualZoo, класс 42 код 168
полностью определенное имя класса 45 типы данных 198 void 181,224 оператор 224 типданных 181
значение undefined 197
w
with, оператор 86, 352
X
XML 407
данные в виде иерархии 407
загрузка XML-данных 452
класс XML 407
класс XML, ActionScript версий 1.0 и 2.0 409
класс XMLDocument 409
класс и тип данных XML 409
методы обращения 413
обращение к узлам-родителям 419
родитель XMLList 410
класс и тип данных XMLList 409
значения, присваивание объекту XMLList 452
интерпретация объекта XMLList как экземпляра XML 427
методы обращения 413
класс и тип данных XMLList (продолжение)
объект с единственным экземпляром класса ХМ L 415
преобразование объекта в строку 460
равенство объектов XMLList 465
корневой узел 407
обработка с помощью циклов for-each-in и for-in 432
обход деревьев XML 441
пространства имен XML 454
уточненные элементы и атрибуты, доступ 454
уточненные элементы и атрибуты, создание 458
равенство объектов Namespace 466
равенство объектов QName 465
равенство объектов XML 463
создание данных XML с помощью
расширения Е4Х 411 типы узлов 409 узлы-потомки, обращение 434 фрагмент XML 407
А
Абстрактные классы 520
отсутствие поддержки в ActionScript 162
Абстрактные методы 162
Автоматический порядок перехода 614
Автоматически объявлять экземпляры сцены, флажок 921,922
Анимация 677
без циклов 677
вложенные анимации 911
класс Animator 691
класс Animator, подкласс SlidingText 694
класс UI Component 695
основанная на скорости 695
событие ENTER FRAM Е 678
влияние скорости 683
сравнение с классом Timer 690
событие TimerEvent. TIMER 684
влияние скорости 690
сравнение с событием Event. ENTER FRAME 690
Анимация, основанная на скорости 695
Асинхронное и синхронное выполнение программы 877
Атрибуты 45
Б
Базовый класс 143
Байт-код ActionScript (ABC) 38
Безопасность 467
домены безопасности 511
локальный тип безопасности песочницы, выбор 483
области действия 468
обработка нарушений 508
примеры сценариев 480
разрешения распространителя 488
разрешения создателя 504
сокеты 479
типы безопасности песочниц 469
локальный с поддержкой сети 469
локальный с поддержкой файловой системы 469
локальный с установленным доверием 469
удаленный 469
Библиотеки классов 941
контроль версий 942
распространение 941
в виде SWC-файлов 943
в виде SWF-файлов 948
совместное использование исходных кодов 941
Бинарные операторы 220
Блок finally 306
Блок пакета 43
Булева логика и операторы 94
Бурет, Рональд (Ronald Bouret) 454
В
Векторное рисование 698
библиотека объектно-ориентированных фигур 706
класс Graphics 698
кривые 702
линии 699
удаление содержимого 705 фигуры 703 Векторы 526
Веннер, Билл (Bill Venner) 161 Виртуальная машина ActionScript 38 Временные шкалы 901
основная шкала, отображение детей 917
создание сценариев 905
Всплывающие и невсплывающие события 565
Вызов перекрытого метода экземпляра 147
Выражение присваивания 64
д
Дерево наследования 143 Дети 522
Детская игра, использование пространства имен 378
Динамические возможности языка ActionScript 328
динамические классы 329
динамические обращения к переменным и методам 335
динамические переменные экземпляра 329
добавление нового поведения 333
обработка циклами for-each-in Hfor:in 331
присваивание замыкания функции 333
справочные таблицы, создание 336
объекты-прототипы для дополнения классов 341
проблемы с динамическими классами 330
функции, использование для создания объектов 339
цепочка прототипов 342
Директива use namespace 387
Добавление 239
Допустимые и запрещенные сокетные соединения 479
ж
Жесткие переносы 773
з
Значения 53
и
Инициализатор переменной 53 Инструкции 217
Инструменты разработки на языке ActionScript 25
Интерфейсы 203
аргумент в пользу 203
в качестве типов данных 182
и классы с несколькими типами данных 205
методы, определение после
компиляции 206 объявления методов 207 подинтерфейсы и суперинтерфейсы 209 синтаксис и использование 206
интерфейсы-маркеры 210
наследование 209
соглашения по именованию 208
составные типы 210
список методов 205
фигурные скобки, возможные проблемы 207
к
Класс
AnonymousListener 262 AntiAliasType 769
Класс (продолжение) BasicShape 706
подкласс Ellipse 710
подкласс Polygon 711 Bitmap 519,521 BitmapData 718 ButterflyGame 263 DataGrid 395 DisplayObject 520
подклассы 521
события Event. ADDED и Event. REMOVED 555
Loader 522, 836, 837
MorphShape 521
Object 144
QName 465
Shape 521
Shape, рисование с помощью векторов 698
SlidingText 694
Socket 873
Sprite 519,522
StaticText 521,768
StyleSheet 799
URLLoader 453
URLRequest 453
Video 521
VirtualPet 45
атрибуты 46
добавление функции 138
код 168
конфликты имен переменных/ параметров 102
параметр конструктора name 60
переменная экземпляра creationTime 74
переменная экземпляра currentCalories 66
переменная экземпляра pet 65
переменная экземпляра petName 55
статические переменные 116
VirtualZoo 42 код 168
полностью определенное имя класса 45
типы данных 198
Класс документа 907
автоматически устанавливаемый 908
указание для FLA-файла 908 Классы 40
API класса 70
Object 144
абстрактного типа 520 атрибуты 45 базовые 143 библиотеки 941 блоки классов 45 динамические 329 игры «Зоопарк» 47 иерархия 143 имена 42
инициализатор 122,347 интерфейсы 70
интерфейсы и классы с несколькими типами данных 205
модификаторы управления доступом 45
наследование 141
объекты-прототипы для дополнения классов 341
объекты Class 123
ограничения в расширениях 205
описание 44
подклассы внутренних классов 154
проблемы с динамическими классами 330
производные 143
собственные классы языка ActionScript 41
требуемые для компиляции программы 177
Клип 519
Ключевые слова 43
implements 205
override 145
Ключевые кадры 902
Код класса Apple 170
Компиляция
локальный SWF-файл с поддержкой сети 484
локальный SWF-файл с поддержкой файловой системы 483
программы 172
в приложении Flex Builder 38,173
в среде разработки Flash 172
выявление ошибок обращения 189
динамическая 38
игнорирование ошибок в строгом режиме 186
путь к классам 177
с помощью mxmlc 175
строгий режим в сравнении со стандартным 177
Композиция 158
в сравнении с наследованием 158
делегирование 159 Константы 118 Контейнеры 522
и глубины 530
удаление объекта 536
удаление элементов 536
управление объектами 543
обращение к экземпляру класса SWF-файла 545
трансформации над вложенными контейнерами 545
трансформация, влияние на дочерние элементы 544
Контроль версий 942
Корневой объект 522
л
Логика ветвлений 95 Локальная область действия 468
Локальное имя 355
Локальные переменные 53
Локальные переменные, параметры конструктора 58
Локальные типы безопасности песочниц 479
Локальный тип безопасности песочницы, выбор 483
м
Массивы 229 анатомия 229
в других языках программирования 230 добавление элементов 236
concat( ), метод 240
push( ), метод 237
splice( ), метод 239
unshift( ), метод 239
непосредственное 236
переменная length 237 индексация элементов 230 конструктор класса Array 232 методы класса Array 237, 242 многомерные 244 обращение к элементам 232
получение значения 232
присваивание значения элементу 233
оператор доступа к массиву 232
проверка содержимого с помощью метода toString( ) 243
размер или длина 230
размер или длина, определение 234
создание 230
с помощью литералов 231
с помощью оператора new 231
с помощью квадратных скобок 231 удаление элементов 241
delete, оператор 241
length, переменная 242
рор( ), метод 242
shift( ), метод 243
удаление элементов (продолжение)
splice( ), метод 243
элементы 230
Метод
addChildAt( ) 532
addedListener( ) 707
addedToStageListener( ) 673
addEventListener( ) 247, 249, 260, 269, 567
параметр useCapture 571
параметр
«использоватьСлабуюСсылку» 265 addObject() 211 addShape() 157 allowDomain( ) 283,475, 504 allowInsecureDomain( ) 506 appendText( ) 777 applyFilter( ) 758 attackEnemy( ) 307 attribute( ), E4X 422 attribute( ), XML 413, 426 copyPixels( ) 752 draw( ) 743
ScribbleAS3, версия
с неотображаемыми векторами 748
параметры 743
растеризация и растворение объекта TextField 746
eat( ) 67, 70
параметр numberOfCalories 72
подпись 77
getDefinition( ) класса ApplicationDomain 893
hasChanged( ) 707
hitListener( ) 584
hitTest( ) 734
push() 237 Метод-аксессор 106 Метод-модификатор 106 Метод-мутатор 106 Метод-писатель 106
Метод-получатель 106
Метод-читатель 106
Метод экземпляра attributes( ) 438
Методика путей библиотек 859
Методика путей внешних библиотек 859
Методика путей исходных файлов 859
Методы
beginBitmapFill( ), beginFill( ) beginGradientFill( ) 703
абстрактные 162
аксессоры 106
аргументы 71
возвращаемые значения 73
в сравнении с замыканием функции 126
мутаторы 106
оператор круглых скобок ( ) 66 параметры 71 подписи 76
с неизвестным количеством параметров, обработка 112
состояние объекта 105
статические 120
тело 66
экземпляра 65
ключевое слово this, исключение из кода 101
методы get и set 110
модификаторы управления доступом 69
обработка неизвестного количества параметров 113
переменная name 112
связанные методы 103
терминология С++и Java 124
Модификаторы управления доступом 46
для методов экземпляра 69
для переменной экземпляра 56
доступность определения, зависимость 346
пространства имен 387
пространство имен и импортированный пакет 394
Наследование 141
в сравнении с композицией 158
вызов перекрытого метода экземпляра 147
динамическое связывание 156
иерархическое моделирование 155
интерфейсы 209
исключение перекрытия методов 153
исключение расширения классов 153
отношения «является», «имеет» и «использует» 160
перекрытие методов экземпляра 145
переопределение 145
повторное использование 145
повторное использование кода 155
подклассы внутренних классов 154
полиморфизм 156
расширение 145
статические методы и переменные не наследуются 144
теория 155
о
Область видимости 345 вложение 345
возможные области видимости, обзор кода 350
глобальная 346
детали реализации 351
доступность определения 346
и открытые пространства имен 388
класса 347
метода экземпляра 349
расширение цепочки с помощью оператора with 352
статического метода 348
функции 349
цепочка областей видимости 345 Обновления экрана 653 выполнение блока кода 660
запланированные 653
назначенная скорость кадров в сравнении с реальной 661
область перерисовки 667
постсобытийные 663
скорость кадров 654
событие Event. RENDER, оптимизация 667
установка скорости кадров 661
Обработка исключений 288
блок finally 306
вложенные исключения 309
изменение хода выполнения программы 313
механизм 288
необработанные исключения 305
несколько типов исключений 291
блок try с несколькими блоками catch 293
один класс для исключительных ситуаций 295
отладочные сообщения для поиска отличий в ошибках 295
пользовательский класс исключения для каждой ситуации 295
степень детализации типов исключений 293
передача исключений вверх по иерархии объектов 301
Обработка событий 246
Объект
ByteArray 733
Class 123
URLRequest 838
VirtualPet
время создания 74
переменная экземпляра pet 55
создание 50
Объект активации 351
Объектно-ориентированное программирование (ООП) 40
Объекты 40
деактивация 323 доступность 317 значения 53
использование методов для изменения состояния 105
объект активации 351
объекты-прототипы 341
создание 49
создание экземпляра 49
текущий объект 63, 72
функции для создания объектов 339
Обычные кадры 902
Одномерные массивы 244
Оновная временная шкала 901
ООП (объектно-ориентированное программирование) 40
Операнды 61
Оператор
as 193,226
break 85, 93
if 80
без условия else 83 цепочка 83 in 226
instanceof 226
is 226
void 224
with 86, 352
блока 43
присваивания 64 Операторы 61, 219
ассоциативность 221
и типы данных 221
количество операндов 219
обзор 222
приоритет 220 Описатель 355
Открытые пространства имен 355, 387
Отношения 160 «имеет» 160 «использует» 160 «является» 160
п
Пакеты 42
и имя класса 42
присваивание имени 43
структура папок 44 Панель Actions (Действия) 905 Перекрытие методов экземпляра 145 Переменная
autoSize 773 Переменные 53
значения по умолчанию 197
копирование и ссылки 64
локальные 53
объявление за пределами пакета 352 определение в сценариях кадров 910 переменные экземпляра 54
присваивание одной переменной
значения другой 62 статические 115
типизированные и нетипизированные 185 экземпляра 54
и статические переменные с одинаковыми именами 116
модификатор private 105
модификаторы управления доступом 56
терминология С++и Java 124 Перенос слов 772
переменная multiline 773 Пикселы
значения цвета 718 изменение позиции 741 инструменты изменения
изображений 741 класс Pixel 721
присваивание цвета области пикселов 739
Побитовые операции 720 Полиморфизм 156 Пользователь 467 Пользовательские ошибки 288 Пользовательские события 246 Порядок перехода 614 Постсобытийные обновления 653, 663
автоматические 667
для событий таймера 665 Потомки 143,522 Похищение информации 480 Предки 143,522
Предопределенные ошибки 288, 315
Предопределенные события 246
Приведение типов 189
восходящее и нисходящее 192
оператор as для приведения к типам Date и Array 193
Пробельные узлы 408
Программа «Зоопарк»
использование функций 136
окончательная версия 956
применение наследования 162
сборка мусора 318 Пространства имен 354
в ActionScript 355
для модификаторов управления доступом 391
доступность 368
и директива use namespace 387
и область видимости 388
класс Namespace 359
открытые 387
пример использования 365
словарь 354
создание 357
уточненные идентификаторы 363
уточняющие 360 Проталкивание, выталкивание и стеки 238 Пустые ключевые кадры 905
Растровые изображения 717 анализ 727
влияние прозрачности на получение значения цвета 729
внесение изменений 734
внешние, загрузка 725
на этапе выполнения 726
на этапе компиляции 727
добавление эффекта старой фотографии 755
загруженные изображения, создание 872
изменение размеров 741
инструменты изменения изображений 741
класс Bitmap 718
класс BitmapData 718
копирование графики 742
определение 519
освобождение памяти 765
палитра выбора цвета на основе изображения 731
получение цвета области пикселов 732
предумноженное значение цвета 729
применение фильтров и эффектов 757
присваивание цвета области пикселов 739
создание 723
тег метаданных [Embed], встраивание 888
форматы изображений 725
цветовые каналы 719
ширина и высота, параметры 723 Режимы работы программы 400 Родители 522
с
Сборка мусора 317
алгоритм поэтапных пометок и вычищений 320
Сборка мусора (продолжение)
деактивация объектов 323
демонстрация 325
достижимый объект, доступный для сборки мусора 320
доступность 317
корневой элемент сборки мусора 317
намеренное освобождение объектов 321
недостижимые объекты 317
повторное использование объектов вместо удаления 321
растровые изображения 765
циклы сборки мусора 320
Связанные методы 103
Скорость кадров 901
влияние на анимации, создаваемые событием Event. ENTER_FRАМЕ 683
влияние на таймеры 690
События 246
ADDED TO STAGE 555
ENTER FRAME 678
Event. ENTER FRAME, анимация 678
Event. RENDER 667
Event. RESIZE 251
IOErrorEvent. IO_ERROR 251
TimerEvent. TIMER, анимация 684
REM О V E D_F RO MST A GE 555
всплывающие и невсплывающие 565
диспетчеризация 246
диспетчеризация события, остановка 581
иерархическая диспетчеризация событий 564
изменение иерархии отображения 587
изменение списка приемников события 589
константа для события 248
названия 249
недостатки в событийной модели 280
обработка событий между границами зон безопасности 282
метод allowDomain( ) 283
метод allowDomain( ), разделяемые события 285
определение 253
получателем является объект 580
получатель 247, 253
получатель, доступ 254
получателями являются потомки 580
пользовательские 267
gameOver 267
toggle 271
отмена стандартного поведения 274
пользовательские события и цепочка диспетчеризации 590
приемники событий 246, 253 приоритет 259 слабые ссылки на приемники событий 265
список приемников 261
тип возвращаемого значения 249
управление памятью 261
приемники событий и цепочка диспетчеризации 566
приоритет и цепочка диспетчеризации 586
разделяемые 285
регистрация приемника события 247 два примера 250
ожидание возникновения события 250 определение имени типа события 248 определение типа данных 249 отмена 252
переменная currentTarget 256 регистрация для события 249 создание приемника события 249
событийный объект 247, 253
события ввода 596
стандартное поведение, отмена 257
текущая фаза, определение 577
фазы диспетчеризации 565
централизация кода, цепочка диспетчеризации события 574
цепочка диспетчеризации 566
События ввода 596
основные правила 596
события ввода уровня приложения Flash Player 646
Event. ACTIVATE
и Event. DEACTIVATE 648
Event. M OU SELE A VE 652
Event. RESIZE 650
типы 647
События ввода с клавиатуры 621
глобальная обработка событий клавиатуры 622
клавиши, расположенные в нескольких местах 627
код клавиши 624
обработка событий для конкретного объекта 623
одновременное нажатие нескольких клавиш 627
отличие от событий текстового ввода 621
последняя нажатая или отпущенная клавиша 624
символ, связанный с клавишей, определение 629
События контейнеров 549
ADDEDTOSTAGE
и REMOVED FROM STAGE 555
Event. ADDED и Event. REMOVED 549
реальный пример использования 554
События мыши 597
внутренние события мыши приложения Flash Player 597
и клавиши-модификаторы 629
и перекрывающиеся отображаемые объекты 605
определение позиции указателя 607
регистрация приемников 602
установка фокуса на объекты 616
События текстового ввода 631
событие Event. SCROLL 636
событие TextEvent. LINK 643
события TextEvent. TEXTINPUT
и Event. CHANGE 632 типы 632 События фокуса 614
автоматический порядок перехода 614 порядок перехода 614
типы внутренних событий фокуса Flash Player 617
установка фокуса на потомков через одного предка 617
установка фокуса с помощью мыши 616
Сокеты
безопасность 479
протокол Secure Sockets Layer (SSL) 468
разрешение, файл политики безопасности 498
установка локального доверия 485
Специализация 143
Специальный символ атрибутов расширения Е4Х (@*) 422
Спецификация W3C
Document Object Model (DOM) 246,407
пространства имен в XML, рекомендации 357
Список отображения 523
класс Stage 523
Справочная таблица 336
Статические методы 120
Статические переменные 115
Стек 238
Сцена 901
Сценарий кадра 653, 905
ключевые и обычные кадры 902
создание сценариев на временной шкале 905
т
Тег метаданных [Embed] 885
Текстовое поле 519
Тернарные операторы 220
Тестирование приложений, безопасность 487
Типданных 181
Boolean, преобразование к другим типам 196
int, преобразование к другим типам 195
Number, преобразование к другим типам 194
Object 181
String, преобразование к другим типам 196
uint, преобразование к другим типам 195
void 181
void, значение undefined 197
аннотация, или декларация, типа 183
в программе по созданию виртуального зоопарка 198
и операторы 221
нетипизированные и типизированные переменные и параметры 185
ошибки несоответствия типов 184
предупреждения об отсутствующих аннотациях типов 188
преобразование к примитивным типам 194
примитивные типы 184
совместимые типы 182
Точка (.) 116
У
Удаленная область действия 468
Удаленные регионы 469
Унарные операторы 220
Управление памятью
намеренное освобождение объекта 321
освобождение памяти, занимаемой растровыми изображениями 765
сборка мусора 320
Условные операторы 80
if 80
switch 84 Уточненный идентификатор 355, 363 Уточняющее пространство имен 355
Ф
Файлы
VirtualPet. as 47
VirtualZoo. as 42
VirtualZoo. as, структура папок 44
политики безопасности 488
получение разрешения на доступ к содержимому в виде данных 494
получение разрешения на загрузку данных 492
размещение 491
разрешения сокетных соединений 498
получение файла по протоколу HTTP 502
получение файла через сокет 500
создание 490
файлы междоменной политики безопасности 489
с расширением AS 42 Фокус ввода с клавиатуры 614 Функции 126
вложенные 129
глобальные 128
для создания объектов 339
использование в программе «Зоопарк» 136
как значения 132
класс VirtualPet с функциями 138
рекурсивные 134
синтаксис литералов 132
уровня исходного файла 130
уровня пакета 127
Ц
Цепочка прототипов 342 Циклы 86
анимация без циклов 677
итератор, или индекс 88
корректировка 88
обработка списков 89
оператор break, завершение цикла 92
do-while, оператор 93
for, оператор 93
while, оператор 86
ш
Шрифты 808
_sans, _serif, _typewriter, названия 784 встраиваемые 784 встраивание начертаний 810 в среде разработки Flash 810
с помощью консольного компилятора mxmlc 811
загрузка на этапе выполнения 818
курсивное начертание 784
определение доступности 823
определение доступности глифа 825
отсутствующие шрифты и глифы 822
полужирное начертание 784
Как сделать дождь в Adobe Photoshop?
Открываем изображение на котором нужно сделать дождь. Лучше будет смотреться, если изображение будет немножко мрачновато или сделано в неясную погоду. Создаем дубликат фона. Создаем новый слой и заливаем его белым. Прочитать остальную часть записи »
Вырезание объекта с помощью фильтра в Photoshop
Когда надо вырезать достаточно крупный и не контрастный объект, можно воспользоваться фильтром Извлечь (Alt+Ctrl+X). Он представляет собой маленькую программу, встроенную в Photoshop. Берем инструмент Подсветка краев, выставляем цвет, который будет хорошо видно на фоне изображения, размер кисти и начинаем грубовато обводить объект. Прочитать остальную часть записи »
Выбор формата сохранения изображения в Photoshop
От выбора формата зависит как качество изображения, так и объем файла. Необходимо найти максимально выгодное сочетание качество-размер. Если работа над изображением еще не закончена, то лучше сохранить в родном формате Photoshop psd и через время можете продолжить работу, при этом сохранятся все слои и другие возможности программы. Если изображение готово, то лучше воспользоваться более распространенными форматами. Прочитать остальную часть записи »