На главную | Где купить | Авторам и заказчикам | Вакансии | Реклама | Издательство | Каталог | Статьи наших авторов | Контакты | Прайс листы

ActionScript 2.0

Автор Альберт Д., Альберт Е.
Название ActionScript 2.0
Серия В подлиннике
ISBN 5-94157-567-X
Формат 70*100 1/16
Объем 1136
Тематика
Оптовая цена
    Вернуться к описанию книги

Полное содержание

Введение 1

Часть I. Основы ActionScript

3

Глава 1. Представление о Flash

5
Компоненты программы Flash MX 2004 Professional 5
Процесс создания Flash-проекта 6
Системные требования программы Flash MX 2004 Professional 7
Обзор интерфейса 8
Основы работы с векторным редактором Flash MX 2004 15
Понятие о векторной графике 15
Иерархия графических объектов Flash 17
Операции над объектами и трансформация объектов 21
Настройка глобальных параметров фильма 23
Работа с цветом 24
Работа с растровой графикой 26
Структура монтажной линейки 28
Работа со слоями 29
Работа с кадрами 31
Символы и экземпляры 35
Типы символов и операции с ними 36
Экземпляр символа и его свойства 38
Работа с библиотекой 40
Работа с общими библиотеками (Shared Libraries) 41
Разрешение вопросов политики безопасности при импорте внешних данных из других доменов 44
Анимация 45
Покадровая анимация (Frame by frame animation) 47
Анимация формы (Shape tweening) 47
Анимация движения (Motion tweening) 49
Использование звука в фильме 50
Публикация исходного документа 54
Формат Flash (SWF) 56
Формат HTML 59
Формат Windows Projector (exe) 64

Глава 2. Новые возможности ActionScript

65
ActionScript 2.0 65
Зависимость от регистра 65
Строгий контроль типа данных 66
Формальный синтаксис классов 66
Новая архитектура компонентов 67
Массивы 67
Работа с клипами 68
Связывание символа с классом 68
Компилированные клипы 68
Контроль заполнения уровней стека 68
Свойство _lockroot 69
Метод getSWFVersion() 69
Работа с текстом 69
Поддержка CSS (Cascading Style Sheets) 69
Возможность загрузки изображений и внешних SWF-документов в текстовый блок 70
Прокрутка текста c помощью колеса мыши 70
Контроль статического текста 70
Класс MovieClipLoader. Организация процесса загрузки 71
Класс Sound. Поддержка ID3-тегов второй версии 71
Динамическая загрузка видео 72
Управление контекстным меню проигрывателя 72
Объект System.capabilities 73
Печать из фильма 73
Политика безопасности 74

Глава 3. Введение в ActionScript. Среда разработки

75
Представление о сценариях ActionScript 75
Использование редактора ActionScript для создания сценариев 76
Раздел Script pane (Окно сценария) 78
Раздел Actions toolbox 87
Раздел Script navigator 89
Носители сценариев AS 89
Синтаксические нормы и правила 92
Предложения 92
Комментарии 93
Имена 94
Функции 95
Функция trace() 96
Инициирование и последовательность выполнения сценариев. Системные и пользовательские события 97
Последовательность выполнения сценариев кадров 98
Сценарии кнопок и клипов 99
Представление об объектно-ориентированном программировании 101
Создание сценария во внешнем файле 103
Применение директивы #include 103
Проекты. Панель Project 104
Работа с проектами 104

Глава 4. Переменные

113
Понятие переменной 113
Создание и типизация переменной 114
Явное объявление переменной 114
Неявное объявление переменной 117
Динамическое создание переменной 117
Присваивание, извлечение и изменение значения переменной 118
Присваивание значения 118
Автоматическая типизация переменной 120
Извлечение значения 121
Область видимости и адресация переменных 121
Вопросы области видимости 121
Локальные переменные 123
Глобальные переменные 126
Адресация переменных 129
Время жизни переменной 135
Удаление переменной 136

Глава 5. Элементарные типы данных

138
Элементарные и ссылочные типы данных 138
Числовой тип. Работа с числами 140
Литералы чисел 141
Специальные числовые значения 142
Операции над числами 144
Встроенные методы для работы с числами 147
Строковый тип. Работа со строками 148
Литералы строк 148
Операции над строками 151
Встроенные свойства и методы для работы со строками 153
Булев тип 164
Логические операции 165
Встроенные методы для работы с булевыми значениями 167
Типы null и undefined 168
Значение null 168
Значение undefined 168
Явное и автоматическое преобразование элементарных типов данных 169
Явное преобразование типов данных 169
Автоматическое преобразование типов данных 172

Глава 6. Выражения и операторы

176
Приоритет операторов 176
Ассоциативность 180
Модификация значения 180
Простое присваивание 181
Составное присваивание 182
Инкрементирование/декрементирование 182
Побитовые операции 184
Битовое представление числа 185
Применение двоичных чисел 187
Логические побитовые операции 188
Побитовые операции сдвига 193

Глава 7. Управляющие структуры: Операторы ветвления. Циклы

198
Ветвление кода 198
Предложение if 199
Предложение else 202
Предложение else if 206
Предложение switch 210
Многократное выполнение кода 214
Понятие программного цикла 215
Цикл while 216
Цикл do while 218
Цикл for 219
Цикл for...in 222
Контроль выхода из цикла 224
Вложенные циклы 225
Циклы монтажной линейки 226

Глава 8. Пользовательские функции

231
Общие сведения о функциях 231
Создание функции 232
Объявление функции 232
Использование литерала функции 233
Параметры функции 234
Контроль типа параметров 235
Класс Arguments. Контроль фактических параметров функции 236
Возвращение значения 240
Контроль типа возвращаемого значения 243
Вызов функции 245
Вызов функции по имени 245
Вызов функции с помощью ссылки 246
Вызов функции с помощью метода apply() 248
Вызов функции с помощью метода call() 250
Периодический вызов функции. Глобальные функции setInterval() и clearInterval() 250
Вопросы области видимости и времени существования функций 255
Область видимости функции 255
Доступ к функции 258
Время жизни функции 259
Рекурсивные функции 259

Глава 9. Массивы

262
Понятие массива 262
Создание массива 263
Конструктор массива 263
Литерал массива 264
Глобальная функция Array() 265
Вывод массива в панель Output 266
Обращение к элементам массива 266
Операции над элементами массива 267
Определение количества элементов в массиве 267
Присваивание значения элементу массива 268
Добавление элементов в массив 269
Строковое представление массива 274
Сортировка массива 276
Извлечение части массива 288
Удаление элементов массива 289
Ассоциативные массивы 290
Многомерные массивы 292

Часть II. Базовые встроенные классы ActionScript

299

Глава 10. Класс Button. Работа с кнопками

301
Создание кнопки в рабочей среде 302
Кнопка как объект AS 304
Имя экземпляра 305
Режимы кнопки 306
Обработка событий кнопки 307
События кнопки 307
Обработчик событий кнопки 308
Контроль нажатия клавиатурной клавиши 311
Область видимости обработчика событий кнопок 313

Глава 11. Обработка событий клипов. Событийная модель ActionScript

315
Обработчик событий on(). Использование клипов в качестве кнопок 316
Создание клипа-кнопки 316
Область видимости обработчика событий on() клипа 317
События клипов 319
Событие enterFrame 320
Событие load 321
Событие unload 322
Событие data 322
Событие mouseMove 323
Событие mouseDown 323
Событие mouseUp 323
Событие keyDown 324
Событие keyUp 324
Область видимости обработчика onClipEvent() 325
Применение методов обработчиков событий 325
Понятие метода обработчика событий 326
и клипов 329
Удаление методов обработчиков событий 331
Применение методов обработчиков событий с использованием адресации 332
Трансляция событий 333
Передача и обработка событий 334
Прекращение трансляции событий 337
Создание источников событий. Объект AsBroadcaster 337
Инициализация источника и трансляция событий 338
Применение объекта AsBroadcaster 340

Глава 12. Класс MovieClip. Работа с клипами

344
Встроенные свойства класса MovieClip 344
Координаты. Свойства _x и _y 345
Размеры. Свойства _width, _height, _xscale и _yscale 347
Поворот. Свойство _rotation 352
Прозрачность. Свойство _alpha 352
Имя. Свойство _name 353
Отображение. Свойство _visible 354
Координаты мыши. Свойства _xmouse, _ymouse 355
Кадры. Свойства _totalframes, _currentframe и _framesloaded 358
Свойства клипов-кнопок: useHandCursor, enabled, trackAsMenu, hitArea 361
Создание выпадающего списка 363
Прочие свойства 369
Адресация с помощью предложения with 374
Управление воспроизведением 376
Остановка и запуск воспроизведения 376
Переход между кадрами 378
Управление воспроизведением монтажной линейки 383
Организация навигации внутри фильма 385
Программный реверс анимации 386
Загрузка сетевого ресурса 388
Организация навигации между Web-страницами 391
Динамическое создание клипов 391
Стеки графических объектов Flash 392
Стек документов проигрывателя 394
Присоединение экземпляра. Метод attachMovie() 394
Дублирование экземпляра. Метод duplicateMovieClip() 400
Контроль уровней стека 406
Создание пустого клипа. Метод createEmptyMovieClip() 409
Удаление динамически созданных клипов 409
Проверка состояния загрузки 411
Метод getBytesTotal() 411
Метод getBytesLoaded() 412
Создание предварительного загрузчика 412
Загрузка внешних Flash-документов и изображений 415
Загрузка на уровень стека проигрывателя 415
внешних документов 417
Особенности загрузки в клип 418
Создание интерактивного слайд-шоу 420
Использование абсолютных ссылок во внешних документах 423
Загрузка переменных из внешнего источника 425
Удаление загруженных документов и содержимого клипов 427
Преобразование координат и контроль границ клипа 428
Преобразование в глобальные координаты 428
Преобразование в локальные координаты 430
Контроль границ клипа 431
Равномерное распределение клипов 431
Перетаскивание объектов 436
Перетаскивание с помощью метода startDrag() 437
Прекращение перетаскивания 438
Контроль наложения клипов 440
Контроль пересечения ограничивающих рамок клипов 440
Контроль попадания точки в заданную область 443

Глава 13. Динамическое рисование

446
Рисование прямолинейных сегментов 447
Задание начальной позиции рисования 447
Определение атрибутов контура 448
Соединение точек прямолинейным отрезком 448
Удаление графики 449
Создание инструмента "карандаш" 450
Применение сплошной заливки 454
Рисование многоугольников и звезд 457
Применение градиентной заливки 463
Определение матрицы трансформации градиента 465
Рисование криволинейных сегментов 479
Динамическое маскирование 483

Глава 14. Применение динамического и пользовательского текста

488
Создание и настройка параметров текстового блока в рабочей среде 489
Настройка параметров текстового блока в рабочей среде 490
Встроенные и машинно-независимые шрифты 495
Использование текстового блока, созданного в рабочей среде 496
Использование шрифтовых символов 497
Динамическое создание и форматирование текста 500
Класс TextField. Настройка параметров текстового блока 501
Класс TextFormat. Свойства форматирования текста 510
Создание всплывающих подсказок 517
Получение информации о параметрах форматирования текста 522
Получение информации о метриках шрифта 523
Проверка наличия у пользователя используемого шрифта 526
Организация прокрутки текста 527
Автоматическая прокрутка текста 527
Свойства управления вертикальной прокруткой текста 528
Свойства управления горизонтальной прокруткой текста 529
Контроль прокрутки содержимого текстового блока 531
Примеры реализации текстовой прокрутки 532
Контроль выделения и передачи фокуса. Класс Selection 540
Передача фокуса 540
Обнаружение носителя фокуса 542
Контроль передачи фокуса 543
Определение границ выделения и положения курсора 544
Управление выделением 547
Управление порядком переноса фокуса с помощью клавиши табуляции 548
Обработка событий текстового блока 550
Замена содержимого текстового блока 554
Удаление текстового блока 557
Форматирование текста с помощью HTML 558
Активизация поддержки HTML и вывод текста с применением HTML-форматирования 559
Теги HTML, используемые для форматирования текста 560
Поддержка и использование CSS. Класс StyleSheet 572
Создание таблицы стилей 573
Определение стилей 576
Добавление стилей в таблицу 581
Получение информации об используемых стилях 593
Очистка таблицы стилей 595
Загрузка текстовых данных из XML-документа 595
Контроль статического текста. Класс TextSnapshot 601
Создание объекта TextSnapshot 602
Чтение и поиск в статическом тексте 603
Выделение статического текста цветом 605

Глава 15. Класс Math. Выполнение математических вычислений

611
Встроенные свойства. Математические константы 611
Возведение числа в степень и извлечение корня 612
Вычисление логарифма числа 613
Определение наибольшего и наименьшего значений 614
Определение модуля числа 615
Округление значений 616
Математическое округление 616
Округление до большего целого 617
Округление до меньшего целого 617
Тригонометрические функции 617
Применение генератора случайных чисел 624
Эффект падающего снега 625

Глава 16. Класс Date. Контроль времени и даты

629
Всемирное скоординированное время и машинное время 629
Создание экземпляра класса Date 631
Вызов конструктора без параметров 631
Вызов конструктора с передачей ему машинного времени 631
Вызов конструктора с передачей ему параметров в формате даты 632
Определение и установка параметров даты 633
Определение местного времени и даты 634
Определение UTC-времени и даты 636
Установка местного времени и даты 636
Установка UTC-времени и даты 638
Работа с машинным временем 638
Создание календаря 639
Глобальная функция getTimer() 644

Глава 17. Классы Mouse и Key. Контроль мыши и клавиатуры

648
Контроль отображения курсора и обработка событий мыши 648
Управление отображением курсора 649
Обработка событий мыши 649
Контроль клавиатуры 655
События клавиатуры 655
Определение характеристик и проверка состояния клавиши 656

Глава 18. Класс Color. Работа с цветом

664
Цветовая модель RGB 665
Цветовая модель HSB 668
Перевод цвета из модели RGB в модель HSB и наоборот 670
Создание объекта Color 677
Окрашивание клипов. Методы setRGB() и getRGB() 678
Сортировка по тону 681
Цветовые трансформации. Методы setTransform() и getTransform() 686
Типы цветовых трансформаций 686
Применение методов setTransform() и getTransform() 687
Создание панели синтеза цвета на основе модели HSB 691
Создание интерактивного цветового редактора 696

Глава 19. Класс Sound. Управление звуком

698
Создание объекта Sound 698
Присоединение звука 700
Управление воспроизведением звука 701
Запуск воспроизведения 701
Остановка воспроизведения 702
Обработка окончания звука 704
Определение длительности и текущей позиции воспроизведения звука 704
Загрузка внешнего звукового файла 706
Загрузка звука в потоковом и событийном режимах 706
Контроль состояния загрузки звука 707
Проверка окончания загрузки звука 709
Поддержка ID3-тегов 710
Управление уровнем звука 714
Управление балансом каналов 716
Управление выводом каналов 718
Пример программного управления звуком. Интерактивная перкуссия 720

Глава 20. Управление процессом загрузки внешних документов и изображений. Взаимодействие между SWF-документами

727
Класс MovieClipLoader 727
Создание экземпляра класса 728
Методы класса MovieClipLoader 728
Обработка событий 730
Начало загрузки. Событие onLoadStart 731
Поступление данных. Событие onLoadProgress 734
Окончание загрузки. Событие onLoadComplete 734
Инициализация загруженного документа. Событие onLoadInit 735
Ошибка при загрузке. Cобытие onLoadError 736
Пример управления загрузкой нескольких документов 737
SWF-документов 742
Класс LocalConnection. Взаимодействие между SWF-документами 744
Механизм взаимодействия 744
Инструментарий класса LocalConnection 746
Объявление методов объекта LocalConnection в документе-получателе 746
Открытие соединения. Метод connect() 747
Отправка данных получателю 748
Закрытие соединения 751
Пример организации взаимодействия документов 752
документов 754
Доменная безопасность 755
Безопасность протоколов 758

Глава 21. Класс SharedObject. Хранение информации на стороне клиента

759
Понятие об объекте SharedObject 759
Ограничения локального хранения информации 760
Вопросы безопасности локального хранения информации 762
Создание объекта SharedObject 763
Запись и чтение данных в объекте SharedObject 766
Сохранение объекта SharedObject 768
Определение объема локального объекта 771
Удаление локальных данных 771
Пример применения объекта SharedObject для хранения пользовательских настроек интерфейса 772

Глава 22. Контроль параметров документа и проигрывателя. Информация о системе и оборудовании

779
Класс Stage. Контроль размеров и масштабирования окна фильма 779
Управление масштабированием фильма 779
Управление выравниванием фильма 782
Контроль размеров сцены и окна проигрывателя 784
Управление отображением меню проигрывателя 789
Управление автономным проигрывателем. Функция fscommand() 790
Класс ContextMenu. Управление контекстным меню проигрывателя 792
Механизм управления контекстным меню 792
Управление стандартным содержимым меню 794
Добавление и настройка пользовательских элементов меню 798
Примеры управления контекстным меню 801
Информация о системе и оборудовании. Объект System.capabilities 804

Глава 23. Класс PrintJob. Печать из Flash-фильма

810
Механизм создания и передачи задания на печать 811
Вызов окна с настройками параметров печати 812
Отправка задания в спулер печати 814
Вывод содержимого на печать 816
Применение класса PrintJob 816

Глава 24. Динамическая загрузка и воспроизведение видео

824
Формат Flash Video. Конвертирование видео в формат FLV 827
Механизм выполнения загрузки FLV-файлов 832
Создание объекта Video. Методы и свойства видеообъекта 833
Открытие локального соединения 834
Контроль загрузки и воспроизведения FLV-видео. Класс NetStream 835
Инициирование выполнения загрузки 835
Контроль процесса загрузки 836
Установка размера буфера 837
Управление воспроизведением 838
Ручной поиск, перемотка 839
Контроль звукового сопровождения 840
Обработка событий объекта NetStream 842
Прекращение загрузки 846
Создание видеопроигрывателя с динамической загрузкой FLV-файла 846

Часть III. Объектно-ориентированное программирование. Создание компонентов

855

Глава 25. Создание пользовательских классов

857
Файлы классов. Понятие classpath 858
Объявление класса 861
Создание экземпляра класса 863
Пакеты 864
Объявление свойств 865
Установка слежения за значением свойства 869
Объявление конструктора 871
Объявление методов 874
Регулирование доступа к членам класса 876
Статические члены класса 880
Определение get/set-методов 882
Динамические классы 886
Суперклассы и подклассы 888
Представление о внутреннем механизме реализации наследования 893
Связывание символа с пользовательским классом 895
Связывание символа с классом с помощью окна Linkage Properties 896
Связывание символа с классом с помощью метода Object.registerClass() 898
Директивы #initclip и #endinitclip 899
Интерфейсы 901
Пример создания и применения пользовательских классов 903

Глава 26. Трехмерное моделирование и анимация

918
Понятие о матрицах 918
Определение матрицы и ее представление в ActionScript 919
Умножение матриц 920
Класс Calculus 921
Изображение и преобразование трехмерных точек 924
Проецирование трехмерных точек на плоскость 928
Создание класса Vertex3D 932
Класс Vertex3D. Трехмерные преобразования и визуализация точек 933
со срезанным углом с помощью клавиатуры 945
с произвольным числом точек с помощью мыши 952

Глава 27. Создание пользовательских компонентов

959
Представление о компонентах 960
Общий процесс создания компонента 962
Ключевые этапы создания компонента 962
Проектирование компонента 964
Создание клипа компонента 967
Объявление класса компонента 969
Объявление свойств 970
Применение тегов метаданных 973
Тег Inspectable. Описание параметров внешнего интерфейса компонента 973
Тег InspectableList. Список внешних параметров 978
Тег Event. Описание событий компонента 979
Тег IconFile. Создание пиктограммы компонента 979
Объявление get/set-методов 980
Трансляция и обработка событий компонентов 988
Инициализация источника событий 988
Трансляция события. Событийный объект 990
Обработка событий компонентов 991
Трансляция пользовательского события onUpdate 997
Инициализация компонента 998
Изменение размеров компонента 1000
Динамическое присоединение графических элементов компонента 1001
Компоновка составляющих элементов 1003
Обеспечение функциональности графических элементов компонента 1004
Использование режима предварительного просмотра (Live Preview) 1007
Распространение компонента 1008
Компиляция клипа компонента 1009
Экспортирование SWC-файла 1009
Создание MXP-пакета расширения 1010

Глава 28. Обработка исключительных ситуаций. Отладка сценариев. Тестирование проекта

1014
Обработка исключительных ситуаций 1014
Тестирование проекта 1028
Управление отображением и воспроизведением фильма 1028
Эмуляция загрузки 1029
Отчет о размерах элементов фильма 1034
Средства отладки сценариев 1035
Панель Output 1035
Применение отладчика (панель Debugger) 1039
   
Приожения 1051
   
Приложение 1. Справочник: методы, свойства и обработчики событий основных встроенных классов ActionScript 1053
Класс Array. Создание и обработка массивов 1053
Класс Button. Работа с кнопками 1054
Класс Color. Работа с цветом 1056
Класс ContextMenu. Управление контекстным меню проигрывателя 1057
Класс ContextMenuItem. Пользовательские элементы контекстного меню 1057
Класс Date. Контроль времени и даты 1058
Класс Error. Исключительные ситуации 1060
Класс Key. Контроль клавиатуры 1060
Класс LocalConnection. Взаимодействие между фильмами 1060
Класс Math. Выполнение математических вычислений 1061
Класс Mouse. Контроль мыши 1063
Класс MovieClip. Работа с клипами 1063
Класс MovieClipLoader. Управление процессом загрузки внешних документов и изображений 1069
Класс NetConnection. Установка локального соединения для динамической загрузки FLV-файлов 1070
Класс NetStream. Динамическая загрузка и воспроизведение FLV-файлов 1070
Класс PrintJob. Печать из Flash-фильма 1071
Класс Selection. Контроль выделения и передачи фокуса 1071
Класс SharedObject. Хранение информации на стороне клиента 1072
Класс Sound. Управление звуком 1072
Класс Stage. Контроль параметров документа 1074
Класс StyleSheet. Поддержка и использование CSS 1074
Класс System. Информация о системе и оборудовании 1075
Класс TextField. Контроль состояния и параметры текстового блока 1075
Класс TextFormat. Динамическое форматирование текста 1079
Класс TextSnapShot. Контроль статического текста 1080
Класс Video. Работа с видеообъектами 1081
   
Приложение 2. Описание компакт-диска 1082
Приложение 3. Виртуальные коды клавиш 1088
Приложение 4. Горячие клавиши инструкций ActionScript 1090
Приложение 5. Интернет-ресурсы, посвященные Flash 1092
   
Предметный указатель 1094


На главную | Где купить | Авторам | Вакансии | Реклама | Издательство | Каталог | Статьи наших авторов | Контакты
© 2001–2019 Издательство «БХВ-Петербург».
Все права защищены. Частичное или полное копирование текстов, слоганов и фотоизображений без письменного согласия Правообладателя запрещено.