Перед вами третя частина статті під назвою "Macromedia Flash 8: курс молодого бійця", присвячена цьому чудовому програмному продукту і технології Flash. Починаючи з сьогоднішнього дня, теми нашої розмови про Flash стануть вужчими. Тому надалі я буду опускати слова "курс молодого бійця" в назві. Однак ця обставина зовсім не вплине на спосіб викладу матеріалу, основна мета якого - відповісти на безліч питань, що виникають у початківців flash-дизайнерів, і дати їжу для роздумів бувалим.
Отже, сьогодні на порядку денному компоненти користувальницького інтерфейсу Macromedia Flash Professional 8, а також способи їх налаштування.
Стандартні компоненти Flash 8
В останній версії потужного графічного пакета Macromedia Flash 8, крім купи інструментів, методів і ефектів тимчасової шкали, призначених для створення якісної мультиплікації, присутні повноцінний об'єктно-орієнтована мова програмування ActionScript 2.0 і численні компоненти (вбудовані програмні блоки типу Movie).
Навіщо взагалі потрібні компоненти? У багатьох випадках вони значно спрощують процес розробки інтерактивного додатки. За допомогою полів введення даних і всіляких перемикачів на web-сайтах легко створюються реєстраційні форми, за допомогою загрузчиков можна управляти завантаженням текстових і мультимедійних даних з різних джерел і т.д. Сьогодні ми познайомимося з одним з класів компонентів у Flash 8 - елементами призначеного для користувача інтерфейсу (User Interface - UI).
Найпопулярнішим об'єктом у Flash, звичайно, є кнопка (button). Вона присутня в Flash і як тип символу, і як елемент UI. Рідше використовуються компоненти RadioButton, CheckBox, MenuBar і ін. Але вони аж ніяк не є менш важливими. Вікно компонентів викликається після натискання Ctrl + F8 або з меню Window -> Components. Основні компоненти UI см. В таблиці.
Контейнер у вигляді вікна
Сьогодні на прикладі налаштування параметрів елемента користувальницького інтерфейсу під назвою Alert будуть розглянуті принципи роботи зі стилями компонентів.
Попереднє налаштування властивостей компонентів
Компонент Alert дозволяє організувати невеликий діалог користувача з комп'ютером. Сообразим щось схоже на програму-Говорилка Alice, створену в 60-х роках і що володіє невеликим штучним інтелектом, який дозволяв підтримувати бесіду з людиною, використовуючи його відповіді на раніше поставлені запитання.
Спершу поміняємо написи на кнопках і напишемо обробник їх натискання. Залежно від того, на яку кнопку клікнув користувач, буде з'являтися особливе повідомлення. Це все досягається без застосування стилів. Отже, перетягнемо на чистий аркуш з панелі Components віконце Alert і забезпечимо його всіма потрібними настройками. Згадаймо, що в будь-якому fla-файлі Flash присутній бібліотека (викликається через натискання Ctrl + "L"), в якій зберігаються екземпляри компонентів. Сюди ж помістилося і віконце Alert. Оскільки нам не потрібно, щоб воно завжди теліпалося в робочій області, то його можна звідти видалити (з монтажного столу, зрозуміло). У бібліотеці Alert залишиться.
Тепер виділяємо перший кадр на часовій шкалі, переходимо в розділ Actions (F9) і записуємо наступний програмний код: "import mx.controls.Alert" (докладніше дивись в лістингу). Багато з необхідних налаштувань можна встановити тільки за допомогою ActionScript. Вікно Alert викликається процедурою Alert.show ( 'текст', 'назву вікна', 'використовувані кнопки', 'вікно', 'обробник натискання', 'виділена кнопка') з безліччю параметрів, зазначених в дужках. Для використовуваних кнопок в одинарних лапках вказується 'Alert.YES | Alert.NO '(ще бувають кнопки "OK" і "Cancel"), а для обробника подій - функція' buttonclick ', яку напишемо трохи згодом. Тепер змінимо написи на кнопках "YES" і "NO" за допомогою властивостей компонента Alert "yesLabel" і "noLabel". Потім встановимо необхідні розміри ( "buttonWidth" і "buttonHeight"). Для підбору оптимальних параметрів Доцільно запускати на тестування ролик - клавіші "Enter" + Ctrl. Логіка функції "buttonclick" наступна: коли натискається кнопка "Чудово", вискакує повідомлення "Так тримати!", Коли "Так собі" - "Чи не вішай носа!". Щоб зміни прийняли силу, опис даної функції і настройки компонента Alert повинні передувати викликом процедури Alert.show, як показано в лістингу:
Подібним чином можна організувати і більш складний діалог з користувачем.
Для чого ж використовуються стилі? Зараз поясню. Будь-компонент у Flash має певну колірну гамму, розмір шрифту і т.д. Але якщо ви займаєтеся розробкою, наприклад, власного сайту, то, щоб не порушувати цілісність картини, вам доведеться "підлаштувати" компоненти під сайт. Я думаю, що не помилюся, якщо скажу, що кожен flash-дизайнер прагне створити свої ролики в особливій, властивій тільки йому, манері. За допомогою стилів і тем у Flash 8 можна зробити кожен компонент унікальним. Але не будемо розпорошуватися і зосередимося поки на стилях.
- Викликається команда File -> Import -> Open External Library і в діалоговому вікні вказується файл SampleTheme.fla. Потім на панелі імпортованої бібліотеки вибирається Flash UI Components2 -> Themes -> MMDefault. Потім з цього вікна необхідно перетягнути папку з ресурсами потрібного компонента (assets) в вікно бібліотеки символів поточного документа.
- За допомогою методів setStyle (параметр, значення) і getStyle (параметр) можна встановити або отримати значення того чи іншого параметра обраного стилю.
Оскільки ми працюємо з компонентом Alert, то перетягнемо в бібліотеку символів нашого документа папку "Alert Assets". Потім скористаємося стандартними властивостями теми "Sample" (див. Лістинг).
Тепер колір діалогового вікна Alert змінений на фіолетовий (0xE0C5FE), а написи на ньому стали синіми, причому шрифт перетворився в "Times New Roman" з розміром 15 пунктів. Потрібно відзначити, що таким чином був модифікований символ Alert, тому зміни позначаться на всіх його примірниках. Опис усіх властивостей тим "Halo" і "Samlpe" можна знайти в довідці Flash 8.
Якщо навіть при використанні стилів зовнішній вигляд компонентів не відповідає вашим естетичним вимогам, тоді можна спробувати написати свою власну тему. Для цього достатньо відредагувати або замінити оболонки необхідних компонентів в одній зі стандартних тем. Для цього зберігаємо файл HaloTheme.fla або SampleTheme.fla під унікальним ім'ям, завантажуємо його, переходимо у вікно бібліотеки символів (Window -> Library або Ctrl + L), виділяємо необхідний компонент і в контекстному меню вибираємо опцію "Edit". Одні елементи призначеного для користувача інтерфейсу складаються з безлічі частин, тому їх можна легко перетворити, перемалював або створивши заново кожну деталь. Такими компонентами є Button, CheckBox, ComboBox, DataGrid, RadioButton тощо. Інші оболонки малюються програмним способом. В цьому випадку для зміни зовнішнього вигляду компонента буде потрібно модифікувати вихідний код. Це, наприклад, компонент Alert. Оскільки створення користувальницької теми є трудомістким процесом, ми не будемо його докладно розглядати. Принаймні зараз. От і все.
Наступного разу поговоримо про створення примітивних комп'ютерних ігор в Flash 8. Ви побачите, що написати іграшку на зразок Yeti не дуже складно. Не забувайте відвідувати наш сайт www.kv.by. де можна подивитися swf-ролики. які були намальовані при підготовці матеріалу для кожної статті. Тільки візьміть Flash Player 8 на озброєння.
Версія для друку