Flex 4. Рецепты программирования - Книга построена как справочник по решению типовых задач, что позволяет лучше понять особенности платформы Flex Framework. Рассказывается о том, как обеспечить взаимодействие различных компонентов и как объединить Flex с другими технологиями для создания полнофункциональных интернет-приложений. Рассматриваются основы работы с Flex и программирование на ActionScript, списки и визуализаторы элементов, связывание и проверка допустимости данных, форматирование и регулярные выражения, работа со службами, взаимодействие с сервером и браузером, работа с данными в среде AIR, интеграция операционной системы со средой AIR, тестирование модулей с помощью FlexUnit и многое другое.
Название: Flex 4. Рецепты программирования Автор: Д. Ноубл, Т. Андерсон, Г. Брэйтуэйт, М. Казарио, Р. Третола Издательство: БХВ-Петербург, Русская Редакция Год: 2011 Страниц: 706 Формат: PDF Размер: 11,4 МБ ISBN: 978-5-9775-0773-8, 978-5-7502-0408-3 Качество: Отличное Язык: Русский
Содержание:
Предисловие Для кого эта книга Кому не следует читать эту книгу Как организована эта книга Обозначения, принятые в книге Использование кода Как использовать эту книгу Сборники рецептов от издательства O'Reilly Цифровые библиотеки Как с нами связаться Благодарности Об авторах Глава 1. Основы работы с Flex и программирования на ActionScript 1.1. Создание Flex-проекта в среде Flash Builder 1.2. Создание проекта Flex Library в среде Flash Builder 1.3. Настройка опций компилятора в среде Flash Builder 1.4. Компиляция Flex-проекта вне среды Flash Builder 1.5. Добавление слушателя событий в MXML-файл 1.6. Создание типизированных векторов 1.7. Использование всплывания событий 1.8. Использование нестандартных событий и передача данных с событиями 1.9. Прослушивание событий клавиатуры 1.10. Определение необязательных параметров у методов 1.11. Определение и реализация интерфейса 1.12. Обращение к родителю Flex-компонента Глава 2. Контейнеры 2.1. Расположение элементов в контейнере 2.2. Динамическое добавление и удаление потомков 2.3. Переупорядочивание потомков в контейнере 2.4. Вывод потомков на экран с учетом элементов данных 2.5. Использование нестандартного визуализатора элементов в контейнере DataGroup 2.6. Использование нескольких визуализаторов элементов в контейнере DataGroup 2.7. Прокрутка в контейнере 2.8. Масштабирование потомков контейнера 2.9. Применение скинов к контейнеру 2.10. Установка фонового изображения в контейнере BorderContainer 2.11. Использование панели элементов управления 2.12. Изменение компоновки элементов содержимого в контейнере Panel 2.13. Отслеживание положения мыши в контейнере 2.14. Перетаскивание элементов с одного визуального контейнера на другой 2.15. Перетаскивание элементов с одного контейнера данных на другой 2.16. Добавление компоновочного контейнера пакета Spark в навигационный контейнер пакета МХ 2.17. Создание Spark-эквивалента для контейнера ViewStack Глава 3. Компоновка 3.1. Линейное расположение потомков 3.2. Переключение способа компоновки на этапе выполнения 3.3. Выравнивание элементов контейнера в компоновке 3.4. Размещение потомков по строкам и столбцам 3.5. Унификация размера потомков 3.6. Создание по мере необходимости и повторное использование потомков 3.7. Создание нестандартной компоновки 3.8. Измерение и изменение размера контейнера 3.9. Динамическое изменение глубины потомков в компоновке 3.10. Использование класса Matrix3D для преобразований внутри компоновки 3.11. Использование класса TransformOffsets для преобразований внутри компоновки 3.12. Создание нестандартной трехмерной компоновки 3.13. Программная реализация прокрутки в компоновке 3.14. Определение видимости элементов в последовательной компоновке Глава 4. Графика 4.1. Управление размером и местоположением графического элемента 4.2. Использование класса Path для рисования фигуры с заданной заливкой и заданными характеристиками линии 4.3. Вывод текста в графический элемент 4.4. Вывод растрового изображения в графическом элементе 4.5. Вывод текста с градиентом 4.6. Наложение растровых данных в качестве маски на графический элемент 4.7. Создание нестандартного графического элемента 4.8. Создание отдельного нестандартного графического компонента 4.9. Определение и многократное использование графических символов Глава 5. Компоненты 5.1. Обработка щелчка по кнопке 5.2. Создание панели с кнопками 5.3. Загрузка внешнего SWF-файла 5.4. Ввод даты с помощью календаря 5.5. Создание обработчиков событий для элементов управления меню 5.6. Вывод сообщения пользователю приложения 5.7. Вывод нестандартного всплывающего компонента 5.8. Распознавание щелчка мышью за пределами всплывающего компонента и закрытие его 5.9. Применение компонента s: Scroller для создания контейнера с прокруткой 5.10. Обработка событий focusIn и focusOut 5.11. Показ раскрывающегося списка в ответ на клавиатурное сокращение 5.12. Группирование кнопок-переключателей 5.13. Отправка Flex-формы серверному сценарию Глава 6. Скины и стили 6.1. Создание скина для элемента s: ButtonSkin 6.2. Накладывание повторяющегося фонового изображения на область приложения 6.3. Создание скина для компонентов s: ButtonBar и s: ButtonBarButton 6.4. Наложение скина на элемент управления s: DropDownList 6.5. Скин для Spark-контейнера 6.6. Изменение внешнего вида компонентов с помощью стилей 6.7. Наложение скинов и установка свойств Spark- и МХ-компонентов с помощью таблиц CSS 6.8. Создание кнопки с пиктограммой 6.9. Добавление нестандартных стилевых свойств 6.10. Частичное встраивание шрифтов с помощью CSS Глава 7. Работа с текстом 7.1. Создание объекта TextFlow 7.2. Создание объекта TextFlow из другого источника 7.3. Создание ссылок в объекте TextFlow 7.4. Добавление графических элементов в объект TextFlow 7.5. Связывание значения с элементом управления s: TextInput 7.6. Создание нестандартного стиля, действующего избирательно 7.7. Стилизация ссылок в объекте TextFlow 7.8. Поиск элементов в объекте TextFlow 7.9. Поиск всех шрифтов, установленных на компьютере пользователя 7.10. Вертикальный вывод текста в текстовой области 7.11. Выделение текста в элементе TextArea 7.12. Управление внешним видом выделенного текста 7.13. Копирование символа в виде растрового изображения 7.14. Создание связанных контейнеров для объекта TextFlow 7.15. Использование нестандартного преобразователя формата 7.16. Создание скина для элемента управления TextArea 7.17. Вывод текста в несколько столбцов 7.18. Выделение последнего символа в объекте TextFlow Глава 8. Списки и визуализаторы элементов 8.1. Создание визуализатора элементов для списка Spark 8.2. Создание редактируемого списка 8.3. Прокрутка к нужному элементу в Spark-списке 8.4. Изменение компоновки Spark-списка 8.5. Создание вложенного списка 8.6. Указание XML-данных для Spark-компонента List 8.7. Реализация Spark-компонента List, в котором можно выделить только некоторые элементы 8.8. Форматирование и проверка допустимости введенных данных в редакторе элементов Spark-компонента List 8.9. Создание контекстного меню для Spark-компонента List 8.10. Реализация перетаскивания в Spark-компоненте List 8.11. Изменение внешнего вида индикатора операции перетаскивания у Spark-компонента List 8.12. Вывод данных, асинхронно загруженных в Spark-компонент List Глава 9. Таблицы 9.1. Определение нестандартных столбцов у компонента DataGrid 9.2. Определение функций сортировки столбцов компонента DataGrid 9.3. Фильтрация элементов в компоненте DataGrid 9.4. Создание заголовков для компонента DataGrid 9.5. Обработка событий компонента DataGrid 9.6. Реализация перетаскивания в компоненте DataGrid 9.7. Редактирование элементов в компоненте DataGrid 9.8. Поиск внутри компонента DataGrid и автоматическая прокрутка к найденному элементу 9.9. Генерирование сводки для плоских данных с помощью объекта GroupingCollection 9.10. Асинхронное обновление объекта GroupingCollection Глава 10. Видео 10.1. Создание базового видеоплеера 10.2. Вывод индикатора хода воспроизведения 10.3. Создание видеоплеера со скином 10.4. Вывод потокового видео 10.5. Вывод количества загруженных байтов видеоданных 10.6. Создание базового видеоплеера с помощью OSMF 10.7. Чтение и вывод точек поиска, встроенных в видеофайл 10.8. Создание оболочки для OSMF 10.9. Вывод титров с помощью OSMF Глава 11. Анимация и эффекты 11.1. Динамическая настройка фильтра для компонента 11.2. Вызов анимации в MXML-разметке и в коде ActionScript 11.3. Создание эффектов, проявляющихся, когда компонент скрыт или показан 11.4. Определение ключевых кадров анимации 11.5. Создание параллельных эффектов или последовательностей эффектов 11.6. Пауза, рестарт и воспроизведение эффекта в обратном направлении 11.7. Создание эффектов, сопровождающих добавление или удаление компонента 11.8. Создание нестандартных анимационных эффектов 11.9. Применение фильтра DisplacementMapFilter во Flex-эффекте 11.10. Применение фильтра ConvolutionFilter 11.11. Применение фильтра Pixel Bender для создания перехода Глава 12. Коллекции 12.1. Добавление, удаление и чтение данных из объекта ArrayList 12.2. Чтение и сортировка данных из объекта ArrayCollection 12.3. Фильтрация объекта ArrayCollection 12.4. Распознавание наличия изменений внутри объект ArrayCollection 12.5. Создание объекта GroupingCollection 12.6. Создание иерархического провайдера данных для элемента управления 12.7. Навигация в коллекции и сохранение позиции 12.8. Создание объекта HierarchicalViewCollection 12.9. Фильтрование и сортировка объекта XMLListCollection 12.10. Сортировка по нескольким полям в коллекции 12.11. Сортировка элементов коллекции по дате 12.12. Создание глубокой копии объекта ArrayCollection 12.13. Использование объектов данных с уникальными идентификаторами Глава 13. Связывание данных 13.1. Связывание со свойством 13.2. Связывание с функцией 13.3. Создание двунаправленного связывания 13.4. Связывание свойств с помощью ActionScript 13.5. Цепочки связанных свойств 13.6. Связывание свойств объекта с XML-документом с применением Е4Х 13.7. Создание нестандартных связываемых свойств 13.8. Связывание с обобщенным объектом 13.9. Связывание со свойствами динамического класса Глава 14. Проверка допустимости данных, форматирование и регулярные выражения 14.1. Применение валидаторов и форматеров в элементах управления 14.2. Создание нестандартного форматера 14.3. Применение регулярных выражений для создания валидатора международных почтовых индексов 14.4. Проверка корректности для комбинированных списков и групп переключателей 14.5. Показ ошибок проверки допустимости с помощью объектов ToolTip в форме 14.6. Применение регулярных выражений для поиска адресов электронной почты 14.7. Применение регулярных выражений для поиска номеров кредитных карт 14.8. Применение регулярных выражений для проверки номеров ISBN 14.9. Создание регулярных выражений с явно указанными классами символов 14.10. Указание типов символов регулярных выражений 14.11. Поиск корректных IP-адресов с применением подвыражений 14.12. Применение регулярных выражений при поиске различных образцов 14.13. Поиск начала или конца строки с помощью регулярных выражений 14.14. Применение обратных ссылок 14.15. Просмотр вперед и просмотр назад Глава 15. Работа со службами и взаимодействие с сервером 15.1. Конфигурирование компонента HTTPService 15.2. RESTful-взаимодействие между Flex-приложениями 15.3. Взаимодействие со службой, возвращающей данные в формате JSON 15.4. Конфигурирование служб для приложения, использующего сервер BlazeDS 15.5. Конфигурирование компонента RemoteObject и связь с ним 15.6. Использование модели «публикация/подписка» для приложений-чатов 15.7. Применение интерфейса IExternalizable для нестандартной сериализации 15.8. Отслеживание результатов нескольких одновременных обращений к службе 15.9. Регистрация типа серверных данных во Flex-приложении 15.10. Взаимодействие с объектом WebService 15.11. Добавление заголовка SOAP в запрос к веб-службе 15.12. Разбор SOAP-ответа от веб-службы 15.13. Безопасное взаимодействие с AMF при помощи объекта SecureAMFChannel 15.14. Отправка и получение двоичных данных через сокетное соединение 15.15. Взаимодействие с сервером при помощи объекта XMLSocket 15.16. Навигация по XML-документу с помощью Е4Х 15.17. Использование регулярных выражений в запросах Е4Х 15.18. Добавление объекта XMLList в объект XML 15.19. Обработка пространств имен в XML-документе, возвращенном службой 15.20. Преобразование объекта данных ActionScript в XML-документ 15.21. Преобразование XML-документа, возвращенного веб-службой, в строго типизированные объекты Глава 16. Взаимодействие с браузером 16.1. Переход по внешнему URL-адресу 16.2. Работа с классом FlashVars 16.3. Вызов функций JavaScript из Flex-приложения 16.4. Вызов функций ActionScript из кода JavaScript 16.5. Изменение заголовка HTML-страницы с помощью объекта BrowserManager 16.6. Разбор URL-адреса с помощью объекта BrowserManager 16.7. Внешние ссылки на данные с помощью объекта BrowserManager 16.8. Внешние ссылки на контейнеры с помощью объекта BrowserManager Глава 17. Модули и совместно используемые библиотеки этапа выполнения 17.1. Создание RSL-библиотеки 17.2. Междоменные совместно используемые библиотеки этапа выполнения 17.3. Оптимизация совместно используемой библиотеки этапа выполнения 17.4. Создание модуля на основе MXML 17.5. Создание модуля на языке ActionScript 17.6. Загрузка модулей с помощью класса ModuleLoader 17.7. Загрузка модулей с помощью класса ModuleManager 17.8. Загрузка модулей с разных серверов 17.9. Взаимодействие с модулем 17.10. Отправка данных модулю через строки запросов 17.11. Использование отчетов редактора связей для оптимизации модулей Глава 18. Основы работы с AIR 18.1. Создание и запуск AIR-приложения в Flash Builder 18.2. Подписывание и экспорт AIR-приложения 18.3. Подписывание AIR-файла сертификатом, заслуживающим доверия 18.4. Разработка под конкретную версию AIR 18.5. Установка идентификатора приложения 18.6. Указание имени приложения и имени его файла 18.7. Указание версии приложения 18.8. Редактирование описания приложения и информации об авторских правах 18.9. Редактирование параметров стартового окна 18.10. Указание установочного каталога для приложения 18.11. Указание папки для меню Программы 18.12. Установка нестандартной пиктограммы для приложения 18.13. Взаимодействие AIR-приложения с браузером 18.14. Настройка приложения на корректное обновление 18.15. Выяснение версии приложения на этапе выполнения 18.16. Создание многоязычных установок AIR-приложения 18.17. Создание приложений со способностью к обновлению 18.18. Создание приложений со способностью к обновлению нестандартным интерфейсом 18.19. Упаковка приложения в стандартный установщик 18.20. Включение низкоуровневого кода в AIR-приложение Глава 19. Работа с данными в среде AIR 19.1. Защита файлов с помощью зашифрованного локального хранилища 19.2. Отображение обновлений в сериализованной версии 19.3. Создание базы данных в оперативной памяти 19.4. Защита базы данных с помощью пароля 19.5. Использование параметров в запросах 19.6. Встраивание базы данных в приложение 19.7. Сохранение простых отношений с помощью ORM Глава 20. Интеграция операционной системы со средой AIR 20.1. Одновременное закрытие всех открытых окон 20.2. Добавление тени к нестандартному окну 20.3. Отложенный вывод на экран данных из буфера обмена 20.4. Создание нестандартных форматов данных для буфера обмена 20.5. Закрепление «горячих» клавиш за пунктами меню 20.6. Уведомление пользователя через панель Dock (в Mac OS) или панель задач (в Windows) 20.7. Регистрация нестандартных типов файлов 20.8. Открытие файла в приложении, ассоциированном с ним по умолчанию 20.9. Проверка смонтированных и размонтированных устройств 20.10. Получение списка доступных внешних дисков 20.11. Сообщить операционной системе, что файл был загружен из Интернета 20.12. Распространение AIR-приложения в виде собственного установщика 20.13. Создание HTTP-прокси с помощью класса ServerSocket Глава 21. Диаграммы 21.1. Создание диаграммы 21.2. Применение эффектов 21.3. Выделение областей диаграммы 21.4. Форматирование надписей на осях диаграммы 21.5. Создание нестандартной метки на диаграмме 21.6. Применение эффекта детализации данных для гистограммы 21.7. Смена скинов у элементов диаграммы 21.8. Динамическое добавление и удаление столбиков диаграммы 21.9. Перекрытие нескольких рядов данных 21.10. Перетаскивание элементов диаграммы мышью 21.11. Создание редактируемой диаграммы Глава 22. Тестирование модулей с помощью FlexUnit 22.1. Создание приложения, работающего на платформе FlexUnit 22.2. Создание приложения для запуска тестов FlexUnit 22.3. Создание тестового случая FlexUnit 22.4. Выполнение кода до и после каждого теста 22.5. Использование одних данных в разных тестовых случаях 22.6. Обработка событий в тестовом случае 22.7. Тестирование визуальных компонентов с помощью FlexUnit 22.8. Создание макетов для тестирования 22.9. Применение сложных утверждений в тестовом случае Глава 23. Компиляция, отладка и развертывание 23.1. Применение операторов trace вне среды Flash Builder 23.2. Работа с компилятором компонентов 23.3. Установка библиотеки Flex Ant tasks 23.4. Компиляция Flex-приложений с помощью программ mxmlc и Ant 23.5. Применение программы Ant для компиляции и развертывания Flex-приложений, использующих RSL-библиотеки 23.6. Компиляция Flex-приложений с помощью программы Rake 23.7. Создание и просмотр выражений в отладчике Flash Builder Debugger 23.8. Установка Ant в автономной версии Flash Builder 23.9. Генерирование документации с помощью ASDoc и Ant 23.10. Опция экспресс-установки 23.11. Профилирование памяти с помощью Flash Builder 23.12. Проверка производительности конкретных методов Глава 24. Локализация, доступность и вывод на печать 24.1. Добавление международного набора символов 24.2. Локализация приложения с помощью пакетов ресурсов 24.3. Использование класса ResourceManager для локализации 24.4. Применение модулей ресурсов для локализации 24.5. Поддержка редактора метода ввода 24.6. Распознавание программ озвучивания текста 24.7. Определение порядка перехода фокуса 24.8. Печать выделенных элементов приложения 24.9. Форматирование содержимого приложения перед печатью 24.10. Управление многостраничной печатью содержимого неизвестного размера 24.11. Добавление колонтитулов в распечатку Предметный указатель