Action Script 2.0 - Книга является подробным руководством по языку сценариев ActionScript 2.0 для среды Macromedia Flash MX 2004. Описаны основные возможности, синтаксис и семантика языка, его базовые элементы: переменные, типы данных, циклы, условные операторы, массивы, функции. Рассмотрены событийная модель и процедура трансляции событий, встроенные классы и технология объектно-ориентированного программирования в стиле ActionScript 2.0. Изложены основанный на этой технологии подход к трехмерному моделированию и процедура создания пользовательских компонентов. Книга написана ясным и логичным языком. Материал организован так, чтобы ее можно было использовать и как обучающее руководство, и как справочное пособие. В начале каждой темы приводятся теоретические сведения, которые затем иллюстрируются конкретными практическими примерами. В книгу включено более 100 примеров, что позволит читателю приобрести практические навыки работы с языком. Для программистов.
Название: Action Script 2.0 Автор: Альберт Д., Альберт Е. Издательство: БХВ-Петербург Год: 2005 Страниц: 1120 Формат: PDF Размер: 27,3 МБ ISBN: 5-94157-567-X Качество: Отличное Серия или Выпуск: В подлиннике Язык: Русский
Содержание:
Введение Часть I. Основы ActionScript Глава 1. Представление о Flash Компоненты программы Flash MX 2004 Professional Процесс создания Flash-проекта Системные требования программы Flash MX 2004 Professional Обзор интерфейса Основы работы с векторным редактором Flash MX Понятие о векторной графике Иерархия графических объектов Flash Операции над объектами и трансформация объектов Настройка глобальных параметров фильма Работа с цветом Работа с растровой графикой Структура монтажной линейки Работа со слоями Работа с кадрами Символы и экземпляры Типы символов и операции с ними Экземпляр символа и его свойства Работа с библиотекой Работа с общими библиотеками (Shared Libraries) Разрешение вопросов политики безопасности при импорте внешних данных из других доменов Анимация Покадровая анимация (Frame by frame animation) Анимация формы (Shape tweening) Анимация движения (Motion tweening) Использование звука в фильме Публикация исходного документа Формат Flash (SWF) Формат HTML Формат Windows Projector (exe) Глава 2. Новые возможности ActionScript ActionScript Зависимость от регистра Строгий контроль типа данных Формальный синтаксис классов Новая архитектура компонентов Массивы Работа с клипами Связывание символа с классом Компилированные клипы Контроль заполнения уровней стека Свойство Jockroot Метод getSWFVersion() Работа с текстом Поддержка CSS (Cascading Style Sheets) Возможность загрузки изображений и внешних SWF-документов в текстовый блок Прокрутка текста с помощью колеса мыши Контроль статического текста Класс MovieClipLoader. Организация процесса загрузки Класс Sound. Поддержка ШЗ-тегов второй версии Динамическая загрузка видео Управление контекстным меню проигрывателя Объект System.capabilities Печать из фильма Политика безопасности Глава 3. Введение в ActionScript. Среда разработки Представление о сценариях ActionScript Использование редактора ActionScript для создания сценариев Раздел Script pane (Окно сценария) Раздел Actions toolbox Раздел Script navigator Носители сценариев AS Синтаксические нормы и правила Предложения Комментарии Имена Функции Функция trace() Инициирование и последовательность выполнения сценариев Системные и пользовательские события Последовательность выполнения сценариев кадров Сценарии кнопок и клипов Представление об объектно-ориентированном программировании Создание сценария во внешнем файле Применение директивы #include Проекты. Панель Project Работа с проектами Глава 4. Переменные Понятие переменной Создание и типизация переменной Явное объявление переменной Неявное объявление переменной Динамическое создание переменной Присваивание, извлечение и изменение значения переменной Присваивание значения Автоматическая типизация переменной Извлечение значения Область видимости и адресация переменных Вопросы области видимости Локальные переменные Глобальные переменные Адресация переменных Время жизни переменной Удаление переменной Глава 5. Элементарные типы данных Элементарные и ссылочные типы данных Числовой тип. Работа с числами Литералы чисел Специальные числовые значения Операции над числами Встроенные методы для работы с числами Строковый тип. Работа со строками Литералы строк Операции над строками Встроенные свойства и методы для работы со строками Булев тип Логические операции Встроенные методы для работы с булевыми значениями Типы null и undefined Значение null Значение undefined Явное и автоматическое преобразование элементарных типов данных Явное преобразование типов данных Автоматическое преобразование типов данных Глава 6. Выражения и операторы Приоритет операторов Ассоциативность Модификация значения Простое присваивание Составное присваивание Инкрементирование/декрементирование Побитовые операции Битовое представление числа Применение двоичных чисел Логические побитовые операции Побитовые операции сдвига Глава 7. Управляющие структуры: Операторы ветвления. Циклы Ветвление кода Предложение if Предложение else Предложение else if Предложение switch Многократное выполнение кода Понятие программного цикла Цикл while Цикл do while Цикл for Цикл for...in Контроль выхода из цикла Вложенные циклы Циклы монтажной линейки Глава 8. Пользовательские функции Общие сведения о функциях Создание функции Объявление функции Использование литерала функции Параметры функции Контроль типа параметров Класс Arguments. Контроль фактических параметров функции Возвращение значения Контроль типа возвращаемого значения Вызов функции Вызов функции по имени Вызов функции с помощью ссылки Вызов функции с помощью метода apply() Вызов функции с помощью метода call() Периодический вызов функции. Глобальные функции setlnterval() и clearlnterval() Вопросы области видимости и времени существования функций Область видимости функции Доступ к функции Время жизни функции Рекурсивные функции Глава 9. Массивы Понятие массива Создание массива Конструктор массива Литерал массива Глобальная функция Array() Вывод массива в панель Output Обращение к элементам массива Операции над элементами массива Определение количества элементов в массиве Присваивание значения элементу массива Добавление элементов в массив Строковое представление массива Сортировка массива Извлечение части массива Удаление элементов массива Ассоциативные массивы Многомерные массивы Часть II. Базовые встроенные классы ActionScript Глава 10. Класс Button. Работа с кнопками Создание кнопки в рабочей среде Кнопка как объект AS Имя экземпляра Режимы кнопки Обработка событий кнопки События кнопки Обработчик событий кнопки Контроль нажатия клавиатурной клавиши Область видимости обработчика событий кнопок Глава 11. Обработка событий клипов. Событийная модель ActionScript Обработчик событий on(). Использование клипов в качестве кнопок Создание клипа-кнопки Область видимости обработчика событий on() клипа События клипов Событие enter Frame Событие load Событие unload Событие data Событие mouseMove Событие mouse Down Событие mouseUp Событие key Down Событие key Up Область видимости обработчика onClipEveni() Применение методов обработчиков событий Понятие метода обработчика событий Вопросы области видимости методов обработчиков событий кнопок и клипов Удаление методов обработчиков событий Применение методов обработчиков событий с использованием адресации Трансляция событий Передача и обработка событий Прекращение трансляции событий Создание источников событий. Объект AsBroadcaster Инициализация источника и трансляция событий Применение объекта AsBroadcaster Глава 12. Класс MovieClip. Работа с клипами Встроенные свойства класса MovieClip Координаты. Свойства _x и _y Размеры. Свойства _width, _height, jxscale и _уscale Поворот. Свойство _rotation Прозрачность. Свойство _alpha Имя. Свойство _name Отображение. Свойство _visible Координаты мыши. Свойства _xmouse, _ymouse Кадры. Свойства Jotalframes, _currentframe и _framesloaded Свойства клипов-кнопок: use Hand Cursor, enabled, IrackAsMenu, hitArea Создание выпадающего списка Прочие свойства Адресация с помощью предложения with Управление воспроизведением Остановка и запуск воспроизведения Переход между кадрами Управление воспроизведением монтажной линейки Организация навигации внутри фильма Программный реверс анимации Загрузка сетевого ресурса Организация навигации между Web-страницами Динамическое создание клипов Стеки графических объектов Flash Стек документов проигрывателя Присоединение экземпляра. Метод aiiachMovie() Дублирование экземпляра. Метод duplicateMovieClip() Контроль уровней стека Создание пустого клипа. Метод create Empty Movie Clip() Удаление динамически созданных клипов Проверка состояния загрузки Метод get Bytes Total() Метод get Bytes Loaded() Создание предварительного загрузчика Загрузка внешних Flash-документов и изображений Загрузка на уровень стека проигрывателя Организация навигации с использованием динамической загрузки внешних документов Особенности загрузки в клип Создание интерактивного слайд-шоу Использование абсолютных ссылок во внешних документах Загрузка переменных из внешнего источника Удаление загруженных документов и содержимого клипов Преобразование координат и контроль границ клипа Преобразование в глобальные координаты Преобразование в локальные координаты Контроль границ клипа Равномерное распределение клипов Перетаскивание объектов Перетаскивание с помощью метода startDrag() Прекращение перетаскивания Контроль наложения клипов Контроль пересечения ограничивающих рамок клипов Контроль попадания точки в заданную область Глава 13. Динамическое рисование Рисование прямолинейных сегментов Задание начальной позиции рисования Определение атрибутов контура Соединение точек прямолинейным отрезком Удаление графики Создание инструмента "карандаш" Применение сплошной заливки Рисование многоугольников и звезд Применение градиентной заливки Определение матрицы трансформации градиента Рисование криволинейных сегментов Динамическое маскирование Глава 14. Применение динамического и пользовательского текста Создание и настройка параметров текстового блока в рабочей среде Настройка параметров текстового блока в рабочей среде Встроенные и машинно-независимые шрифты Использование текстового блока, созданного в рабочей среде Использование шрифтовых символов Динамическое создание и форматирование текста Класс Text Field. Настройка параметров текстового блока Класс TextFormat. Свойства форматирования текста Создание всплывающих подсказок Получение информации о параметрах форматирования текста Получение информации о метриках шрифта Проверка наличия у пользователя используемого шрифта Организация прокрутки текста Автоматическая прокрутка текста Свойства управления вертикальной прокруткой текста Свойства управления горизонтальной прокруткой текста Контроль прокрутки содержимого текстового блока Примеры реализации текстовой прокрутки Контроль выделения и передачи фокуса. Класс Selection Передача фокуса Обнаружение носителя фокуса Контроль передачи фокуса Определение границ выделения и положения курсора Управление выделением Управление порядком переноса фокуса с помощью клавиши табуляции Обработка событий текстового блока Замена содержимого текстового блока Удаление текстового блока Форматирование текста с помощью HTML Активизация поддержки HTML и вывод текста с применением HTML-форматирования Теги HTML, используемые для форматирования текста Поддержка и использование CSS. Класс SiyleSheei Создание таблицы стилей Определение стилей Добавление стилей в таблицу Получение информации об используемых стилях Очистка таблицы стилей Загрузка текстовых данных из ХМL-документа Контроль статического текста. Класс TextSnapshot Создание объекта TextSnapshot Чтение и поиск в статическом тексте Выделение статического текста цветом Глава 15. Класс Math. Выполнение математических вычислений Встроенные свойства. Математические константы Возведение числа в степень и извлечение корня Вычисление логарифма числа Определение наибольшего и наименьшего значений Определение модуля числа Округление значений Математическое округление Округление до большего целого Округление до меньшего целого Тригонометрические функции Применение генератора случайных чисел Эффект падающего снега Глава 16. Класс Date. Контроль времени и даты Всемирное скоординированное время и машинное время Создание экземпляра класса Date Вызов конструктора без параметров Вызов конструктора с передачей ему машинного времени Вызов конструктора с передачей ему параметров в формате даты Определение и установка параметров даты Определение местного времени и даты Определение UTC-времени и даты Установка местного времени и даты Установка UTC-времени и даты Работа с машинным временем Создание календаря Глобальная функция getTimer() Глава 17. Классы Mouse и Key. Контроль мыши и клавиатуры Контроль отображения курсора и обработка событий мыши Управление отображением курсора Обработка событий мыши Контроль клавиатуры События клавиатуры Определение характеристик и проверка состояния клавиши Глава 18. Класс Color. Работа с цветом Цветовая модель RGB Цветовая модель HSB Перевод цвета из модели RGB в модель HSB и наоборот Создание объекта Color Окрашивание клипов. Методы setRGB() и getRGB() Формирование каталога цветов на основе безопасной Web-палитры Сортировка по тону Цветовые трансформации. Методы setTransform() и getTransform() Типы цветовых трансформаций Применение методов setTransform() и getTransform() Создание панели синтеза цвета на основе модели HSB Создание интерактивного цветового редактора Глава 19. Класс Sound. Управление звуком Создание объекта Sound Присоединение звука Управление воспроизведением звука Запуск воспроизведения Остановка воспроизведения Обработка окончания звука Определение длительности и текущей позиции воспроизведения звука Загрузка внешнего звукового файла Загрузка звука в потоковом и событийном режимах Контроль состояния загрузки звука Проверка окончания загрузки звука Поддержка ID3-тегов Управление уровнем звука Управление балансом каналов Управление выводом каналов Пример программного управления звуком. Интерактивная перкуссия Глава 20. Управление процессом загрузки внешних документов и изображений. Взаимодействие между SWF-документами Класс MovieClipLoader Создание экземпляра класса Методы класса MovieClipLoader Обработка событий Начало загрузки. Событие onLoadStart Поступление данных. Событие onLoadProgress Окончание загрузки. Событие onLoadComplete Инициализация загруженного документа. Событие onLoadfnit Ошибка при загрузке. Событие onLoadError Пример управления загрузкой нескольких документов Вопросы политики безопасности, связанные с загрузкой внешних SWF-документов Класс Local Connection. Взаимодействие между SWF-документами Механизм взаимодействия Инструментарий класса LocalConnection Объявление методов объекта LocalConnection в документе-получателе Открытие соединения. Метод соппес1() Отправка данных получателю Закрытие соединения Пример организации взаимодействия документов Вопросы политики безопасности, связанные с взаимодействием документов Доменная безопасность Безопасность протоколов Глава 21. Класс SharedObject. Хранение информации на стороне клиента Понятие об объекте SharedObject Ограничения локального хранения информации Вопросы безопасности локального хранения информации Создание объекта SharedObject Запись и чтение данных в объекте SharedObject Сохранение объекта SharedObject Определение объема локального объекта Удаление локальных данных Пример применения объекта SharedObject для хранения пользовательских настроек интерфейса Глава 22. Контроль параметров документа и проигрывателя. Информация о системе и оборудовании Класс Stage. Контроль размеров и масштабирования окна фильма Управление масштабированием фильма Управление выравниванием фильма Контроль размеров сцены и окна проигрывателя Управление отображением меню проигрывателя Управление автономным проигрывателем. Функция fscommand() Класс ContextMenu. Управление контекстным меню проигрывателя Механизм управления контекстным меню Управление стандартным содержимым меню Добавление и настройка пользовательских элементов меню Примеры управления контекстным меню Информация о системе и оборудовании. Объект System.capabilities Глава 23. Класс Print Job. Печать из Flash-фильма Механизм создания и передачи задания на печать Вызов окна с настройками параметров печати Отправка задания в спулер печати Вывод содержимого на печать Применение класса PrintJob Глава 24. Динамическая загрузка и воспроизведение видео Формат Flash Video. Конвертирование видео в формат FLV Механизм выполнения загрузки FLV-файлов Создание объекта Video. Методы и свойства видеообъекта Открытие локального соединения Контроль загрузки и воспроизведения FLV-видео. Класс NeiSiream Инициирование выполнения загрузки Контроль процесса загрузки Установка размера буфера Управление воспроизведением Ручной поиск, перемотка Контроль звукового сопровождения Обработка событий объекта NeiSiream Прекращение загрузки Создание видеопроигрывателя с динамической загрузкой FLV-файла Часть III. Объектно-ориентированное программирование. Создание компонентов Глава 25. Создание пользовательских классов Файлы классов. Понятие classpath Объявление класса Создание экземпляра класса Пакеты Объявление свойств Установка слежения за значением свойства Объявление конструктора Объявление методов Регулирование доступа к членам класса Статические члены класса Организация считывания и установки значений свойств Определение get/set-методов Динамические классы Суперклассы и подклассы Представление о внутреннем механизме реализации наследования Связывание символа с пользовательским классом Связывание символа с классом с помощью окна Linkage Properties Связывание символа с классом с помощью метода Object..regisferClass() Директивы #initclip и #endinitclip Интерфейсы Пример создания и применения пользовательских классов Глава 26. Трехмерное моделирование и анимация Понятие о матрицах Определение матрицы и ее представление в ActionScript Умножение матриц Класс Calculus Изображение и преобразование трехмерных точек Проецирование трехмерных точек на плоскость Создание класса Vertex3D Класс Vertex3D. Трехмерные преобразования и визуализация точек Пример реализации: управление центрированным кубом со срезанным углом с помощью клавиатуры Пример реализации: управление трехмерной плоскостью с произвольным числом точек с помощью мыши Глава 27. Создание пользовательских компонентов Представление о компонентах Общий процесс создания компонента Ключевые этапы создания компонента Проектирование компонента Создание клипа компонента Объявление класса компонента Объявление свойств Применение тегов метаданных Тег Inspectable. Описание параметров внешнего интерфейса компонента Тег Inspectable List. Список внешних параметров Тег Event. Описание событий компонента Тег IconFile. Создание пиктограммы компонента Объявление get/set-методов Трансляция и обработка событий компонентов Инициализация источника событий Трансляция события. Событийный объект Обработка событий компонентов Трансляция пользовательского события onUpdate Инициализация компонента Изменение размеров компонента Динамическое присоединение графических элементов компонента Компоновка составляющих элементов Обеспечение функциональности графических элементов компонента Использование режима предварительного просмотра (Live Preview) Распространение компонента Компиляция клипа компонента Экспортирование SWC-файла Создание МХР-пакета расширения Глава 28. Обработка исключительных ситуаций. Отладка сценариев. Тестирование проекта Обработка исключительных ситуаций Тестирование проекта Управление отображением и воспроизведением фильма Эмуляция загрузки Отчет о размерах элементов фильма Средства отладки сценариев Панель Output Применение отладчика (панель Debugger) Приложения Приложение 1. Справочник: методы, свойства и обработчики событий основных встроенных классов ActionScript Класс Array. Создание и обработка массивов Класс Button. Работа с кнопками Класс Color. Работа с цветом Класс ContextMenu. Управление контекстным меню проигрывателя Класс ContextMenultem. Пользовательские элементы контекстного меню Класс Date. Контроль времени и даты Класс Error. Исключительные ситуации Класс Key. Контроль клавиатуры Класс LocalConnection. Взаимодействие между фильмами Класс Math. Выполнение математических вычислений Класс Mouse. Контроль мыши Класс MovieClip. Работа с клипами Класс MovieCliphoader. Управление процессом загрузки внешних документов и изображений Класс NetConnection. Установка локального соединения для динамической загрузки FLV-файлов Класс NeiSiream. Динамическая загрузка и воспроизведение FLV-файлов Класс PrintJob. Печать из Flash-фильма Класс Selection. Контроль выделения и передачи фокуса Класс SharedObject. Хранение информации на стороне клиента Класс Sound. Управление звуком Класс Stage. Контроль параметров документа Класс StyleSheet. Поддержка и использование CSS Класс System. Информация о системе и оборудовании Класс TextField. Контроль состояния и параметры текстового блока Класс Text Format. Динамическое форматирование текста Класс TextSnapShot. Контроль статического текста Класс Video. Работа с видеообъектами Приложение 2. Описание компакт-диска Приложение 3. Виртуальные коды клавиш Приложение 4. Горячие клавиши инструкций ActionScript Приложение 5. Интернет-ресурсы, посвященные Flash Предметный указатель