Macromedia Flash MX – перші кроки. Спеціальні текстові блоки Область дії файлу політики URL-адрес

21.08.2020 Цікаве

Під назвою " 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 див. у таблиці.

Компонент Опис
Accordion Навігатор форм
Alert Текстове повідомлення
Button Проста кнопка
CheckBox Прапорець
ComboBox Комбінований список
List перелік
Loader Контейнер-завантажувач
RadioButton Селекторний перемикач
TextArea Текстова область
Window Контейнер у вигляді вікна

Сьогодні на прикладі налаштування параметрів елемента інтерфейсу користувача під назвою 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, як показано у лістингу:

Import mx.controls.Alert; Alert.buttonWidth=150; Alert.buttonHeight=25; Alert.yesLabel="Чудово"; Alert.noLabel="Так собі..."; buttonclick = function(evt)(if (evt.detail == Alert.YES) (Alert.show("Так тримати!", "Macromedia Flash 8");) if (evt.detail == Alert.NO) (Alert .show("Не вішай ніс!", "Macromedia Flash 8");)) Alert.show("Як справи, друже?", "Macromedia Flash 8", Alert.YES | Alert.NO, this, buttonclick, Alert .YES);

Подібним чином можна організувати і складніший діалог з користувачем.


Робота зі стилями

Навіщо використовуються стилі? Зараз поясню. Будь-який компонент у Flash має певну колірну гаму, розмір шрифту і т.д. Але якщо ви займаєтеся розробкою, наприклад, свого сайту, то, щоб не порушувати цілісність картини, вам доведеться "підлаштувати" компоненти під сайт. Я думаю, що не помилюся, якщо скажу, що кожен flash-дизайнер прагне створити свої ролики в особливій, властивій тільки йому манері. За допомогою стилів і тем у Flash 8 можна зробити кожен компонент унікальним. Але не розпилюватимемося і зосередимося поки що на стилях.

Прикладний програмний інтерфейс форматування (Styles API) надає користувачеві властивості та методи, за допомогою яких можна змінити колір компонента та відформатувати текст, що міститься на ньому. Зазвичай цього достатньо. Разом із Flash 8 поставляються два стилі з набором параметрів: "Halo" та "Sample", які знаходяться у файлах HaloTheme.fla та SampleTheme.fla, відповідно. На малюнку показано їхнє розташування в Windows 2000/XP. Слід зазначити, що з теми "Sample" властивостей набагато більше, тому доцільніше використовувати саме її модифікації компонентів. А робиться це так:

  1. Викликається команда File -> Import -> Open External Library та у діалоговому вікні вказується файл SampleTheme.fla. Потім на панелі імпортованої бібліотеки вибирається Flash UI Components2 -> Themes -> MMDefault. Потім із цього вікна потрібно перетягнути папку з ресурсами необхідного компонента (assets) у вікно бібліотеки знаків поточного документа.
  2. За допомогою методів setStyle (параметр, значення) та getStyle (параметр) можна встановити або отримати значення того чи іншого параметра вибраного стилю.

Оскільки ми працюємо з компонентом Alert, то перетягнемо в бібліотеку символів нашого документа папку Alert Assets. Потім скористаємося стандартними властивостями теми Sample (див. лістинг).

Global.styles.Alert.setStyle ("color", "red"); _global.styles.Alert.setStyle ("themeColor", "haloBlue"); _global.styles.Alert.setStyle ("backgroundColor", "0xE0C5FE"); _global.styles.Alert.setStyle ("fontFamily", "times new roman"); _global.styles.Alert.setStyle ("fontSize", "15");

Тепер колір діалогового вікна 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. Оскільки створення теми користувача є трудомістким процесом, ми не будемо його докладно розглядати. Принаймні зараз. От і все.


Лекційні матеріали, домашні завдання та тести
дистанційного курсу «Електронна школа Macromedia Flash MX»
Російська тижнева методична газета для вчителів інформатики. Видавничий дім "Перше вересня" № 42 (2003 рік)
«Аналог програми «Правилка» із пакету «Хіти Роботландії»
серед Macromedia Flash».

Друковані публікації

ЕЛЕКТРОННА ШКОЛА MACROMEDIA FLASH MX
III курс: Основи програмування у Macromedia Flash MX
Модуль ІV: Команда with. Програма «Правилка»
Мова ActionScript

Експрес-план модуля:
  • Команда with
  • Flash-дублер програми "Правилка" з пакету "Хіти Роботландії".

Команда with

При використанні об'єктів у програмному коді (скрипті) неважко помітити, що навіть у невеликому блоці скрипта неодноразово повторюється назва одного й того самого об'єкта. Особливо часто подібні повторення відбуваються під час використання деяких окремих об'єктів, наприклад об'єктів Math, що належать до верхнього рівня. Наприклад, наступний код є досить поширеним:

A = Math.PI * r * r; x = r * Math.cos(Math.PI); y = r * Math.sin(Math.PI/2);

Тут об'єкт Mathтрапляється неодноразово, що ускладнює сприйняття скрипта. Цей запис можна спростити, якщо блок скрипта укласти в дужки, скориставшись командою with. Тоді в межах цього блоку скрипта інтерпретатор ActionScript буде звертатися до зазначеного об'єкта. Тепер код можна переписати у такому вигляді:

With (Math) ( a = PI * r * r; x = r * cos (PI); y = r * sin (PI/2); )

Давайте познайомимося із загальним форматом команди:

with (object) (
statement(s);
}

object— екземпляр об'єкта ActionScript або Movie Clip.

statement(s)- Команда або група команд, укладених у фігурні дужки.

Давайте розберемо ще один приклад, в якому як об'єкт використовується MovieClipз іменем someOtherMovieClip:

З (іншимMovieClip) ( _x = 50; _y = 100; gotoAndStop(3); )

Наступний уривок скрипта показує, як можна написати попередній приклад без використання команди with:

SomeOtherMovieClip._x = 50; someOtherMovieClip._y = 100; someOtherMovieClip.gotoAndStop(3);

Можливе використання вкладених команд з доступом до інформації в багатьох контекстних областях.

Flash-дублер програми «Правилка» з пакету «Хіти Роботландії»

У ході програмування роботи кнопок ми активно використовуватимемо оператор розгалуження: if та if else. А також організуємо роботу лічильника, який додає окуляри користувачеві у разі правильної відповіді та віднімає окуляри, у разі коли, не виправивши помилку, або зробивши некоректні виправлення, користувач натисне кнопку «Далі».

Організуємо роботу Movie Clip (priz), в якій буде розміщено «Призовий фонд». У тому випадку, якщо користувач набере 10 очок, його приз буде являти собою кошик з апетитними фруктами. Якщо в скарбничці користувача виявиться 9 або 8 очок як приз він отримає шматок сиру, якщо користувачеві «пощастить» набрати 6 або 7 очок він отримає гарбуз, ну а в тому випадку якщо він набере 5 або менше 5 очок йому дістанеться помідор!

Для любителів п'ятибальної оцінки перекладемо вищесказане на доступну для шкільного журналу мову:

Кошик із фруктами 5 ;
Шматок сиру - 4 ;
Гарбуз 3 ;
Помідор 2 .

При зверненні до Movie Clip ми використовуватимемо команду with.

На нашій сцені буде використано 11 кадрів. Перші 10 кадрів будуть «робочими листами», на яких будуть розміщені словосполучення з граматичними помилками (Input Text). Зазвичай поля введення залишають порожніми, але в нашому випадку вони мають працювати! На кожному аркуші буде запрограмовано роботу динамічного поля. Якщо користувач не виправить граматичну помилку, у нього буде виведений текст: «Ви не виправили помилку!».

У цій програмі використано два шари. Нижній шар — background на ньому розміщений статичний текст «Програма Правилка» та графічний символ з капелюхом.

Якщо ви неодмінно хочете використовувати в програмі для написання заголовка який-небудь екзотичний шрифт, встановлений на вашій машині, не забудьте використовувати для цього тексту процедуру Break Apart з меню Modify. Іншими словами, перетворите текст на графіку. І тоді ваш текст не перетвориться на абракадабру на машині, де цього шрифту немає!

Тепер все по порядку. 1 кадру пропишемо скрипт:

Stop(); fscommand("showmenu", "false"); i = 0;

Під час відтворення ролика необхідно вимкнути «Меню». Таким чином, ми не дозволимо користувачеві зробити "крок назад". І ще ми "включаємо" лічильник.
2-10 кадру пропишемо акцію:

Роботу кнопок розглянемо з прикладу першого кадру. Інші кнопки ви зможете запрограмувати самостійно.

On (release) ( if (t1=="Біла хризантема") ( i++; gotoAndPlay(2); ) else ( i--; z1 = "Ви не виправили помилку!"; ) )

Тепер сформуємо «Призовий фонд». Створимо новий символтипу Movie Clip з ім'ям prizу якому працюватимуть 5 кадрів. Всім кадрам кліпу пропишемо акцію:

Перший кадр кліпу буде порожнім.

У другому кадрі помістимо кошик із фруктами та пропишемо кадру мітку: five.
У третій кадр помістимо шматок сиру та пропишемо кадру мітку: four.
У четвертий кадр помістимо гарбуз і пропишемо кадру мітку: three.
У п'ятий кадр помістимо помідор і пропишемо кадру мітку: two.

У цій програмі все це "продовольча різноманітність" було імпортовано з колекції ClipArt97 (wmf-файли). Втім, ви можете сформувати свій власний Призовий фонд, все залежить виключно від вашої фантазії.

Повернемося на сцену і на останньому 11 кадрі розмістимо створений нами кліп із призами. Не забудьте прописати його на сцені. Instance Name: priz. Цьому кадру пропишемо скрипт, який буде, аналізуючи вміст лічильника, «видавати» користувачеві приз:

Stop(); sh = i; with (_root.priz) ( if (i

Протестуйте ролик. І якщо це необхідно зробіть його налагодження.

Для спрощення процесу тестування, створіть на останньому кадрі поле динамічного тексту з ім'ям shі в цьому полі виводьте дані лічильника. Для цього до скрипта 11 кадру додайте другим рядком:

Після завершення процесу налагодження видаліть це поле та прописаний вами рядок.

Домашнє завдання: Основи програмування в Macromedia Flash MX

О, скільки нам відкриттів дивовижних
Готують просвітництва дух
І досвід, син помилок важких,
І геній, парадоксів друг,
І випадок, бог-винахідник.
Олександр Сергійович Пушкін, «Євгеній Онєгін»

Ваше завдання полягає у створенні ролика дублюючого матеріалу, викладеного в цій лекції. Словосполучення ви можете підібрати самостійно.

Ілюстративний матеріал, використаний для формування призового фонду ролика ви зможете знайти в архіві, що супроводжує матеріал лекції. У цьому архіві представлені файли у форматі wmf. Якщо цей призовий фонд не задовольняє ваші вимоги, можете сміливо фантазувати та використовувати власну бібліотеку.

Виконане завдання подайте у вигляді файлу у форматі fla (якщо розмір файлу перевищить 150 Кб, будь ласка, запакуйте файл в архів) і надішліть вчителю.

Бажаю Вам успіхів у самостійному вивченні Macromedia Flash MX!

Всім доброго дня! Сьогодні поговоримо з вами про те, як вставити flash на сайт. Здавалося б, питання дрібниці. Якщо це банер, просто скопіювати запропонований код і розмістити в шаблоні, віджеті або на сторінці через редактор. Якщо це flash анімація для сайту, то вставити за допомогою того ж коду, але самостійно прописаного. Однак і в цьому нескладному процесі є свої тонкощі, про які ми зараз поговоримо.

Flash анімація для сайту

Отже, нам потрібно було розмістити флеш-анімацію на сайті. Для цього використовується стандартний код:

На перший погляд, все правильно і ніщо не віщує проблем. Однак, якщо ви прокрутите сторінку вгору, то побачите таку особливість, що розміщена таким чином flash анімація перекриватиме адмінський тулбар - верхню чорну панель адміну WordPress.

За великим рахунком, це не критично, оскільки цю панель бачите тільки Ви та ваші помічники, якщо на блозі відключено реєстрацію користувачів. Але справжні проблеми виникають, коли на сайті використовується багаторівневе css меню, під яким розміщено флеш банер, який у цьому випадку його перекриває.

Це відбувається через те, що flash завжди по глибині знаходиться попереду блоків div. Щоб цього уникнути, потрібно додати лише один додатковий параметру наш код:

У цьому випадку ролик flash поводиться як звичайне зображення. Також можна скористатися аналогічним параметром value="transparent", але це створить додаткове навантаження і не сповільнить завантаження сторінки. В кінцевому результаті на код вставки флеш на сайт виглядатиме так:

Плагін для розміщення flash анімації на сайті

Якщо Вам доводиться часто вставляти різні ролики або просто боїтеся щось неправильно написати в цьому довгому коді, можна скористатися плагіном, який вставляє флеш на сайт автоматично - від вас потрібно лише вказати адресу його розташування. Називається він WP-SWFObject. Як завжди, завантажуємо та встановлюємо його, потім заходимо до «Параметри > WP-SWFObject» і виконуємо необхідні налаштування. Тут можна все залишити за замовчуванням, крім одного – пункту «Window Mode». Для того, щоб вставити swf на сайт з урахуванням тих параметрів, які нам потрібні, виберіть тут зі списку «OPAQUE» і збережіть налаштування.

Тепер, щоб вставити флеш на сайт, пропишіть шорткод (його потім можна додати до панелі редактора).

У дії виглядатиме так:

Для прямого розміщення через шаблон використовуйте інший код:

Попередня стаття була присвячена анімації. Ми створювали анімацію на основі motion tweening, shape tweening та просто складали рух з окремих кадрів. Думаю, настав час перейти до більш складної теми, розгляду інструменту, який створює основу для більшості якісних Flash-фільмів (Flash movies).

Цей інструмент - ActionScript - подієво-керована мова, вбудована у Flash. остання версія ActionScript, (яка є у Flash 5), значно відрізняється від ActionScript, що був у 4-м Flash. Якщо в минулій версії, це був обмежений набір команд, що дозволяє здійснювати лише основні дії, і вводиться за допомогою не дуже зручного інтерфейсу, то новий ActionScript - це потужна мова, зі збільшеним набором команд, підтримкою класів, успадкування (!) і набагато більше зручним інтерфейсом.

ActionScript робить ваші сторінки інтерактивними. Ви можете реагувати на події з мишки або клавіатури, можете виконати будь-які дії при програванні певного кадру.

Для того, щоб оволодіти ActionScript повною мірою, бажано вже мати досвід програмування (переважно С++, JavaScript, etc.). Однак, однією з переваг мови Flash є те, що вам не потрібно бути професіоналом у Flash, або повністю знати ActionScript, щоб писати на ньому якісний код. Ви можете використовувати ті можливості мови, які ви вважаєте необхідними для своєї роботи.

Оскільки ця стаття присвячена основам мови, ми розглянемо:

  • Панель дій (Actions panel), де відбувається практично всі спілкування з ActionScript.
  • Кнопки – як їх змушувати працювати, як нам потрібно.
  • Шляхи – як звертатися до потрібних об'єктів?
  • Основні дії з Flash-мультиками (movie clips) – ми керуватимемо процесом програвання фільму, як нам буде завгодно.
  • Налагодження в ActionScript - вікна Output і Debugger.

Мета цієї статті, дати вам відчути ActionScript, показати, що ця мова може служити як для створення вельми значних програм, так і для виконання елементарних дій, які зроблять вашу сторінку набагато привабливішою.

Терміни

Перш ніж ми перейдемо до конкретних дій, кілька термінів з ActionScript:

  • Дії (Actions)- це інструкції, які говорять Flash-мультику що робити. Від них походить назва мови - ActionScript (дослівно - сценарій дій). Давайте домовимося, що в рамках цієї статті ми будемо використовувати термін "інструкція", щоб не плутатися зі справжніми діями, які будемо робити.
  • Події (Events)- це дії, що відбуваються, коли програється мультик. Події, наприклад, можуть відбуватися, коли закінчується завантаження якогось кадру, коли ми досягаємо якогось кадру, коли користувач натискає клавішу на клавіатурі або курсор мишки опиняється над нашим об'єктом.
  • Вирази (Expressions)- це будь-яка частина інструкції, що породжує значення. Наступні приклади є виразами: 2 + 2, 2 * 2, a + b, 2 * pi * r, (15 + k) * random (10).
  • Функції (Functions)- це блок коду, який можна багаторазово використати. Функції можна передавати значення і отримувати від неї результат, що повертається. Наприклад, number = get_color(15, 24). 15 і 24 є аргументами (або параметрами) функції get_color, значення, що повертається, якої записується в змінну number.
  • Класи (Classes)- Це типи об'єктів. Наприклад, клас дерева – рослина. У Flash є кілька визначених класів (дуже схожих на класи JavaScript). Ви можете створювати свої класи або модифікувати існуючі.
  • Примірники (Instances)- це буквально екземпляри певних класів. Наприклад, екземпляром рослини можуть бути дерево, кущ або квітка. Примірник – це вже конкретний реальний об'єкт. Якщо клас - це визначення об'єкта (примірника), то екземпляр - це конкретне втілення, це клас у дії. Кожному екземпляру можна присвоїти ім'я, щоб через нього звертатися до функцій або змінних об'єктів.
  • Обробники (Handlers)- це спеціальні інструкціїякі обробляють події. Наприклад onClipEvent- Обробник дій, пов'язаних з конкретним символом (див. ).
  • Оператори (Operators)- це елементи мови, які обчислюють значення виходячи з одного або більше аргументів. Наприклад, оператор додавання (+) повертає суму двох значень, що стоять ліворуч і праворуч від нього.
  • Змінні (Variables)– це ідентифікатори, які можуть зберігати значення. Наприклад, a = 5; або name = "Michael".

Ці терміни ми будемо використовувати для обговорення ActionScript. Отже…

Панель дій (Actions Panel)

Панель дій служить для відображення та введення програм ActionScript (рис. 1). Існує два режими роботи з панеллю - нормальний (для "чайників") та експертний. В експертному режимі список команд – це просте поле для введення тексту. У нормальному ж режимі ми не можемо безпосередньо редагувати команди. Для цього використовується панель параметрів.

Додати інструкцію можна, натиснувши кнопку "+" (див. мал. 1) або вибравши відповідну інструкцію у списку елементів мови. Крім того, для всіх дій у Flash є послідовності клавіш, за допомогою яких це можна зробити набагато швидше. Вони наведені праворуч від кожної дії меню кнопки "+". Наприклад, щоб додати функцію stop(), потрібно натиснути на Esc+st (послідовно: Esc, потім "s", потім "t").

Видалити інструкцію можна, вибравши її, та натиснувши кнопку "-" (або просто клавішу Delete).

Я рекомендую вам не починати відразу ж користуватися експертним режимом, якщо у вас немає досвіду програмування Java-подібними мовами (С++, Java, JavaScript). Нормальний режим має велику гідність, що робить його незамінним для новачків - у ньому є набагато менше шансів помилитися з синтаксисом мови. Початківцям це допоможе швидше зрозуміти тонкощі ActionScript.


Рис. 1 - Панель дій

На панелі дій відображаються дії об'єкта або кадру, вибраного на даний момент.

Кнопки

Перше, що хочеться, коли починаєш вивчати інтерактивність Flash - зробити щось, що б відгукувалося на дії користувача, "оживити" ваше творіння, додати Зворотній зв'язок. Найпростіший спосіб зробити це – кнопки. Тому з них ми й почнемо.

Як знаєте, у Flash існує спеціальний тип символу до створення кнопок - Button (див. ). Вважатимемо, що ви вже навчилися створювати кнопки, тепер навчимося відстежувати натискання на ці кнопки.

Кнопки в Macromedia Flash мають великий перелік подій, на які ми можемо реагувати:

  • press- Клавіша миші натиснута, коли курсор знаходиться в межах кнопки;
  • release- Клавіша миші віджата, коли курсор знаходиться в межах кнопки;
  • releaseOutside- клавіша миші віджата, коли курсор перебуває поза межами кнопки;
  • rollOver- курсор миші входить у межі кнопки;
  • rollOut- курсор виходить межі кнопки;
  • dragOver- курсор входить у межі кнопки, при цьому була натиснута кнопка, та натиснута клавіша миші;
  • dragOut- курсор виходить за межі кнопки, при цьому була натиснута кнопка, та натиснута клавіша миші;
  • keyPress("Клавіша") - була натиснута "Клавіша". Список клавіш можна переглянути у довідці Flash (об'єкт Key), або використовувати панель параметрів для введення потрібної клавіші.

На жаль, Flash "розуміє" лише ліву клавішу миші. Права використовується для виклику контекстного меню (клацніть правою клавішею на якомусь Flash мультику). Способів відловлювати у Flash середню клавішу або "колесо" (mouse wheel), я поки не зустрічав, думаю, що їх не існує.

Перехоплюються ці події за допомогою директиви on(). Синтаксис її такий:

On (подія) (... // Наші дії)

Нижче ви можете спробувати викликати деякі події:

Дуже часто використовуваний приклад - перехід за посиланням при натисканні на кнопку:

On (release) ( getURL("http://rubs.boom.ru"); )

Щоб перевірити цей сценарій, виділіть вашу кнопку, натисніть Ctrl+Alt+A та введіть програму.

Так просто можна перехопити всі події, пов'язані з кнопкою. Ну а як їх використовувати – це справа виключно вашої уяви.

Основні дії з Movie Clips

Велика частка творчості у Flash посідає маніпуляцію символами. Майже всі базові прийоми, всі трюки та ефекти нездійсненні без цих дій.

За допомогою сценаріїв ActionScript можна виконувати практично будь-які дії над символами. Треба тільки пам'ятати, що виконати ці дії можна лише у відповідь на дію користувача, або при настанні якогось кадру на часовій шкалі.

То що ж у нас є? Я перерахую лише основні (на мій погляд) інструменти. Решту ви знайдете у списку елементів мови або допомоги.

Функції кліпів (movie clip), які можна викликати:

  • play() - починає або відновлює відтворення кліпу;
  • stop() - зупиняє відтворення кліпу;
  • gotoAndPlay() - переходить на певний кадр (сцену) та продовжує відтворення;
  • gotoAndStop() - переходить на певний кадр (сцену) та зупиняє відтворення.

Властивості (параметри) кліпів, які можна зчитувати/змінювати:

  • _x, _y - координати кліпу (у пікселях);
  • _xscale, _yscale - масштаб кліпу (у відсотках), відповідно по горизонталі та по вертикалі;
  • _width, _height - ширина та висота кліпу (у пікселях);
  • _rotation - Кут повороту кліпу (у градусах);
  • _alpha - прозорість кліпу (у відсотках);
  • _visible - Видимість.

Це далеко не все, що можна робити із кліпами. Використовуйте інші параметри, експериментуйте, робіть!

Імена

Для того, щоб звертатися до кліпів, нам потрібно розібратися з поняттям імені об'єкта (instance name) та шляху до об'єкта (target path). Домовимося, що кліп (movie clip) та об'єкт для нас – однакові речі.

Ім'я об'єкта – це ім'я конкретного екземпляра символу. Скажімо, у нас може бути символ - машинка, а екземпляри цього символу будуть називатися "Машинка1", "Машинка2", "Pickup", "Запорожець"...

Для того, щоб дати ім'я об'єкту, потрібно виділити об'єкт, і в панелі Instance (Window->Panels->Instance, Ctrl+I) у графі Name ввести ім'я об'єкта (рис. 2). Імена можуть складатися лише з літер, цифр та символу підкреслення ("_"), причому ім'я не може починатися з цифри.


Рис. 2 - Панель Instance

Шляхи

Шлях до об'єкта – це запис імені об'єкта з урахуванням ієрархії. Спробую пояснити, що таке.

Ви знаєте, що у Flash об'єкти можна "вкладати" один в одного, становлячи таким чином ієрархію. Так от, ця вкладеність забезпечує не тільки зручність у користуванні об'єктами, вона ще й обмежує видимість імен об'єктів. Видимість обмежується своїм рівнем. Об'єкт може безпосередньо (на ім'я) звертатися тільки до об'єктів, що входять до нього, що стоять на 1 рівень нижче в ієрархії.

Щоб звернутися до об'єкта іншого рівня, потрібно знати шлях до нього. Причому шлях може вказуватись як абсолютно (з самого верхнього рівняієрархії), і щодо (з поточного рівня).

Шлях включає об'єкти, через які потрібно "пройти" по дереву ієрархії, щоб дістатися до потрібного нам об'єкта, перераховані через точку. Крім того, існує кілька покажчиків (можна їх назвати "віртуальними об'єктами"), які часто дуже корисні:

this - Покажчик на "самого себе" (тобто на поточний об'єкт). Буває потрібний, наприклад, коли потрібно передати в функцію покажчик на об'єкт, з якого ця функція викликається.

_parent - покажчик на "батька". Вказує на об'єкт, що стоїть рівнем вище в ієрархії.

_root - "корінь". Це початок ієрархії. Без нього не обійтися за умови абсолютного шляху.

Шлях виглядає так:

leaf.play();- у подоб'єкта leaf(аркуш) викликається функція play();

_parent.tree.leaf.stop();- мається на увазі, що на одному рівні є об'єкт tree,у якого є об'єкт leaf, у якого і викликається функція stop();

_root.banner._visible = false;- зробити кліп banner, що знаходиться на 1-му рівні, невидимий.



Рис. 3 - Ієрархія кліпів

Для ілюстрації візьмемо ієрархію із 5-ти об'єктів (рис. 3). Об'єкти 1-4 знаходяться на 1-му шарі, об'єкт 5 - на 2-му шарі. Об'єкт 2 вкладено в об'єкт 1, а об'єкт 3 вкладено в об'єкт 2. Об'єкти малюнку візуально вкладені друг в друга, але це у жодному разі значить, що має бути " в житті " . Тут вони так згруповані для наочності. Так як ім'я об'єкта не може починатися з цифри, нехай об'єкти у нас називаються obj1-obj5.

Тепер займемося шляхами. Для початку подивимося, які об'єкти можуть звертатися один до одного на ім'я. obj1може звертатися до obj2,а obj2- до obj3, але при цьому obj1не може звернутися до obj3безпосередньо, т.к. той міститься не в obj1, а в obj2.

Скажімо першому об'єкту необхідно, щоб об'єкт 3 почав заново відтворюватися з одного кадру. Ось як це робиться:

Obj2.obj3.gotoAndPlay(1);

Щоб 4-му об'єкту зробити 1-й об'єкт (зауважте з усіма подоб'єктами!) Напівпрозорим, йому потрібно у своєму сценарії написати наступне:

Parent.obj1._alpha = 50;

Root.obj1._alpha = 50;

Т.к. obj4у нас знаходиться на першому рівні ієрархії, то для нього _rootі _parent- одне і теж.

Тепер для об'єкта 3 напишемо скрипт, який зробить об'єкт 5 невидимим при натисканні клавіші миші. У сценарії для об'єкта 3 пишемо:

OnClipEvent (mouseDown) ( _root.obj5._visible = false; )

У цьому фрагменті ми використали абсолютний шлях. Якби ми використали відносний, це виглядало б як:

Parent._parent._parent.obj5._visible = false;

Сподіваюся, я прояснив момент із шляхами.

Наведені вище приклади показали як як виглядають шляху, а й як викликаються функції і присвоюються значення властивостям.

Розділ 5. Робота з текстом

В будь-який Flash-Фільм може бути доданий текст. Подібно до роботи у звичайних текстових редакторах, для тексту може бути встановлений розмір, шрифт, стиль, інтервал, колір та спосіб вирівнювання. Ви можете трансформувати шрифт подібно до інших об'єктів - повертати, масштабувати, нахиляти. При цьому зберігається можливість редагування символів.

На основі фрагмента тексту може бути створене гіперпосилання.

Flash-Фільм може містити динамічні текстові поля, а також поля, що редагуються користувачем. Редаговані поля в Flash-фільме мають те саме призначення, що й текстові поля, що розміщуються у форму на Web-сторінці: з їх допомогою від користувача може бути отримана та чи інша інформація, що підлягає обробці на сервері або клієнтським сценарієм. І, нарешті, ви можете створювати прокручуються багаторядкові текстові області.

При необхідності текст може бути конвертований у графічний об'єкт, і тоді з його символами дозволяється працювати як із окремими графічними фігурами.

Створення та редагування тексту

Щоб додати текстове поле до Flash-фільм, слід виконати такі дії:

  1. Увімкнути інструмент Text Tool на панелі Tools.
  2. Клацнути мишею у тому позиції на столі, куди потрібно помістити текстове поле; в результаті в цій позиції з'явиться текстовий курсор, оточений рамкою, що виділяє.
  3. Набрати текст.

Зверніть увагу, що в правому куті рамки (верхньому або нижньому), що виділяє, є маркер, який визначає тип текстового поля(рис. 5.1): прямокутний маркер у правому верхньому кутку відповідає текстовому полю фіксованої ширини (Fixed text block); у такому полі виконується автоматичне перенесення на наступний рядок, якщо черговий символ не вміщується на поточному рядку; ширина поля встановлюється користувачем за допомогою перетягування маркера; після публікації фільму на Web-сервері вміст такого поля не може бути змінено за допомогою сценарію чи читачем Web-сторінки;

  • круглий маркер у правому верхньому кутку відповідає текстовому полю, що розширюється (Expanded text block); це однорядкове текстове поле, ширина якого автоматично збільшується під час введення тексту; цей варіант використовується за умовчанням; вміст такого поля також не може бути змінений за допомогою сценарію чи читачем Web-сторінки;

Рис. 5.1.Маркери текстового блоку

  • білий прямокутний маркер у правому нижньому куті відповідає текстовому полю, призначеному для введення вмісту, що динамічно змінюється - Dynamic text block або Input text block; вміст поля першого типу може змінюватися за допомогою сценарію, а другого – читачем Web-сторінки (наприклад, під час введення даних у форму);
  • чорний прямокутний маркер у правому нижньому куті вказує на текстове поле, вміст якого може переміщатися (прокручуватися) всередині текстової області за допомогою вертикальної та/або горизонтальної смуги прокручування.

Щоб змінити атрибути текстового блоку, слова (фрагменту тексту) або окремого символу, потрібно:

  1. Увімкнути інструмент Text.
  2. Вибрати (виділити) мишею відповідний фрагмент тексту.
  3. У меню Text вибрати відповідну команду, або скористатися елементами керування, що є на панелі інспектора властивостей тексту.

Усі команди меню Text розділені на три групи (рис. 5.2):

  • в першу входять «традиційні» команди роботи з текстом (Font, Size, Style), які, власне, є каскадними меню, що містять можливі значення відповідних атрибутів тексту;
  • другу групу утворюють дві також досить поширені команди - Align (Вирівнювання) та Tracking (Трекінг);
  • у третю групу включена єдина команда - - Scrollable (Переміщається), що забезпечує встановлення відповідної властивості текстового поля.

Рис. 5.2.Склад команд меню Text

Більш зручним засобом зміни параметрів тексту є інспектор властивостей. Його формат залежить від типу текстового поля.

Статичний текст

Статичний текст (Static Text) - це текстовий вміст фільму, який може бути змінено після публікації фільму.

Формат інспектора властивостей статичного тексту показано на рис. 5.3.

Рис. 5.3.Інспектор властивостей статичного тексту

З представлених на панелі елементів керування додаткового пояснення вимагають, мабуть, такі:

  • текстове поле URL; виділивши на столі текстовий блок і вказавши в цьому полі повну Web-адресу (URL - Universal Resources Locator) пов'язаного ресурсу, ви отримаєте справжнісіньке гіперпосилання; щоправда, на відміну інших візуальних редакторів, вона буде представлена ​​не підкресленим шрифтом, а шрифтом із штриховою лінією. Використовуваний у Flashмеханізм створення гіперпосилань має два недоліки: по-перше, URL доводиться вводити вручну, і, по-друге, Flashне перевіряє правильність URL навіть для локальних файлів;
  • список Target (Цільовий), що розкривається; він дозволяє вказати, яке вікно броузера слід завантажити ресурс, викликаний за вказаним URL; список стає доступним при введенні в поле URL хоча б одного символу; Список містить наступні варіанти (вони аналогічні стандартним значенням атрибуту TARGET мови HTML):
    • _blank - документ, що викликається, завжди завантажується в нове, неіменоване вікно;
    • _self - документ, що викликається, завжди завантажується в те ж вікно, в якому було ініційовано посилання;
    • _parent - документ, що викликається, завантажується в батьківське вікно (тобто у вікно більше високого рівняієрархії); якщо дане вікно не має «батька», або саме таке, то результат аналогічний застосуванню значення _self;
    • _top - документ, що викликається, завантажується у вікно самого верхнього рівня; (якщо це вікно саме є таким, то результат аналогічний застосуванню значення _self);
  • кнопка Selectable (Виділений); вона використовується як прапорець: клацання на кнопці дозволяє встановити або скасувати для тексту відповідну властивість; при цьому слід на увазі, що можливість виділення фрагмента тексту не означає можливість його редагування; вибраний фрагмент може бути скопійований, наприклад, буфер обміну;
  • кнопка Change Direction of Text (Змінити напрямок тексту) дозволяє відкрити меню; за допомогою якого ви можете вибрати орієнтацію напису: горизонтальну або вертикальну; меню містить три команди (рис. 5.4):
    • Horizontal (Горизонтальний);
    • Vertical, Left to Right (Вертикальний, зліва направо);
    • Vertical, Right to Left (Вертикальний, праворуч наліво);

При встановленні вертикальної орієнтації тексту змінюється склад кнопок форматування та, крім того, стає доступна кнопка Rotation:

  • кнопка Rotation (Поворот) відіграє роль прапорця і дозволяє змінювати розташування символів у написі (рис. 5.5);
  • прапорець Use Device Font (Використовувати шрифт пристрою) -якщо прапорець встановлений, то під час відтворення фільму Flash-Плеєр використовує фізичні шрифти, встановлені для броузера читача; це може зменшити розмір файлу фільму і підвищити зручність читання для дрібного шрифту.

Рис. 5.4.Меню для зміни орієнтації тексту

Рис. 5.5.Варіанти розташування вертикального напису: при натиснутій (ліворуч) та віджатій (в центрі) кнопці Rotation

Порада

Отримати потрібне розташування вертикального напису значно простіше, якщо спочатку встановити параметри поля, а потім ввести в нього текст. Якщо ж намагатися перетворити на вертикальний напис горизонтальне поле, то можна отримати результат, показаний на рис. 5.5 праворуч.

Слід пам'ятати, що гіпертекстові посилання можуть створюватися лише з урахуванням горизонтального тексту.

Біля правої межі панелі інспектора властивостей знаходиться кнопка Format (Формат), клацання на якій відкриває додаткове діалогове вікно, що дозволяє встановити параметри форматування текстового поля (рис. 5.6).

Рис. 5.6.Діалогове вікно Format Option

Це вікно містить чотири текстові поля, поєднані з повзунковими регуляторами «в стилі Macromedia»:

  • Indent (Відступ) - величина абзацного відступу для нового рядка(У пікселах);
  • Line Spacing ( Міжрядковий інтервал) - відстань між сусідніми рядками (у пунктах); для вертикального тексту цей параметр визначає відстань між стовпцями тексту;
  • Left Margin (Ліве поле) - відстань між лівою межею текстового поля та першим символом рядка;
  • Right Margin (Праве поле) – відстань між правою межею текстового поля та останнім символом рядка.

Діалогове вікно Format Option ідентичне всім типів текстових полів.

Динамічний текст

Динамічний (або текст, що змінюється) Dynamic Text - це таке текстове поле, вміст якого може змінюватися за допомогою сценарію на мові ActionScript (тобто в процесі відтворення фільму).

Можливість роботи з динамічним текстовим полем зі сценарію на ActionScript обумовлена ​​тим, що кожне таке поле є екземпляром спеціального об'єкта мови ActionScript, який називається TextField.

Динамічному текстовому полю може бути присвоєно унікальне ім'я (ідентифікатор), яким можна звертатися до поля, щоб встановити чи змінити вміст і формат цього поля. Наприклад, ви можете динамічно змінювати символьне кодування для такого поля.

Встановлення атрибутів динамічного тексту

Для встановлення атрибутів динамічного тексту панель інспектора властивостей містить такі елементи (рис. 5.7):

  • текстове поле Instance Name (Ім'я зразка), у якому вказується ім'я текстового поля; незважаючи на те, що ім'я поля виводиться (безпосередньо в ньому) символами сірого кольору, які зазвичай позначають у додатках Windows заблокований елемент інтерфейсу, в даному випадку введення дозволено;
  • список Line type (Тип рядка) форматів текстового поля:
    • Single Line (Однорядкове);
    • Multiline (Багаторядкове);
    • Multiline no wrap (Багаторядкове без переносів);
  • кнопка Render text as HTML; якщо вона натиснута, то задані параметри форматування тексту (такі як розмір, стиль, використання гіперпосилання) при публікації фільму будуть збережені у вигляді відповідних HTML-тегів;
  • кнопка Show Border (Показати рамку); якщо вона натиснута, то текстове поле буде оточене рамкою;

Рис. 5.7.Формат інспектора властивостей для динамічного тексту

  • прапорець Selectable (Вибирається); його призначення аналогічно розглянутому для статичного тексту;
  • текстове поле Var (від Variable - Змінна) призначене для введення імені змінної, пов'язаної із створюваним текстовим полем; про використання змінних для керування елементами фільму буде розказано у підрозділі «Створення інтерактивних елементів фільму»;
  • кнопка Characters (Символи), клацання на якій відкриває додаткове діалогове вікно Character Options, що дозволяє встановити параметри використання вбудованого шрифту для текстового поля; вікно містить три перемикачі (рис. 5.8):
    • No Characters (Ніякі символи) - інформація про шрифт, що використовується, не експортується в Flash-фільм за його публікації;
    • All Characters (Всі символи) - - Flash-фільм включається інформація про всі символи шрифту;
    • Only (Вибрані) - в Flash-фільм включається інформація про тільки ті символи шрифту, які вказані за допомогою розташованих нижче прапорців.

Рис. 5.8.Діалогове вікно Character Options

З налаштування параметрів вбудованого шрифту слід зробити таке пояснення.

Коли ви використовуєте в Flash-фільм шрифт, встановлений на вашому комп'ютері, Flashвпроваджує інформацію про шрифт у SWF-файл, гарантуючи тим самим, що текст буде коректно відображено Flash-плеєром. Однак не всі шрифти, які використовуються в Flash, можуть експортуватися у SWF-файл. Тому попередньо рекомендується перевіряти, чи може експортуватися цей шрифт. Для цього необхідно в меню View вибрати команду Antialias Text (Згладжування тексту) та оцінити результат згладжування. Якщо згладжування не виконано, це означає, що Flashне розпізнає такий шрифт і не експортуватиме його.

Альтернативний спосіб – використання фізичних шрифтів (Device Font).

Інформація про фізичний шрифт не експортується до SWF-файл. Замість цього Flash-плеєрвикористовує будь-який шрифт із числа встановлених на комп'ютері, найбільш близький до фізичного шрифту.

Оскільки інформація про фізичний шрифт не включається до SWF-файл, такий варіант забезпечує дещо менший розмір файлу Flash-фільма. Крім того, фізичний шрифт може бути чіткішим порівняно з впровадженим шрифтом для дрібних символів (менше 10 пунктів). Однак, якщо на комп'ютері користувача відсутній шрифт, текст може виглядати зовсім не так, як очікував автор фільму.

Flashмістить три види фізичних шрифтів: _sans (близький до шрифтів Helvetica та Verdana, Arial, Helvetica, sans-serif); _serif (близький до Times Roman); _typewriter (близький до шрифту Courier).

Щоб вказати фізичний шрифт, що використовується в даному текстовому полі, необхідно вибрати його в списку шрифтів, що є на панелі інспектора властивостей тексту.

Створення текстової області, що прокручується

На основі динамічного текстового поля може бути створена текстова область, що переміщується (прокручується). Приклад такої текстової області показано на рис. 5.9.

Для створення текстової області, що прокручується, необхідно виконати наступні дії:

Рис. 5.9.Приклад текстової області, що прокручується

  1. Увімкніть інструмент Text та за допомогою миші окресліть на столі межі текстової області.
  2. На панелі інспектора властивостей за допомогою списку Line type, що розкривається, виберіть формат текстового поля; при цьому корисно дотримуватись наступних правил:
    • якщо ви хочете використовувати вертикальну смугу прокручування, слід вибрати тип Multiline або Multiline no wrap;
    • якщо вам потрібно поле тільки з горизонтальною смугою прокручування, слід вибрати тип Single Line;
    • Щоб створити поле з вертикальною та горизонтальною смугами прокручування, виберіть тип Multiline no wrap.
  3. У разі потреби встановіть потрібні значення інших параметрів текстового поля (стиль та розмір шрифту, колір тощо).
  4. Не вимикаючи інструмент Text, перемістіть вказівник миші за межі текстової області та клацніть лівою кнопкою; при цьому текстовий курсор усередині поля зникне, і воно виявиться виділеним чорною пунктирною рамкою.
  5. Знову перемістіть курсор всередину текстової області та клацніть правою (!) кнопкою, щоб відкрити контекстне меню.
  6. У контекстному меню виберіть Scrollable (Прокручуваний).

Рис. 5.10.Панель Components

  • Переконайтеся, що у робочій області Flashвідкрито панель Components (Компоненти); якщо панель закрита, у меню Window виберіть Components; дана панель (рис. 5.10) призначена для включення до фільму елементів управління (кнопок, прапорців, списків і т. д.); докладніше про роботу з панеллю Components розказано у розділі «Створення інтерактивних фільмів».
  • На панелі Components знайдіть елемент ScrollBar (на рис. 5.10 виділено тінню) і перетягніть його мишею в текстову область; при цьому враховуйте таке:
    • Flash автоматично встановлює розмір смуги прокручування відповідно до висоти (для вертикальної) та довжини (для горизонтальної) текстової області;
    • щоб отримати вертикальну смугу прокручування, слід встановити елемент ScrollBar уздовж вертикальної межі області;
    • Щоб отримати горизонтальну смугу прокручування, слід встановити елемент ScrollBar упоперек горизонтального кордону текстової області таким чином, щоб покажчик миші опинився в межах текстової області, як показано на рис. 5.11;
    • Flashстворює повзунок на смузі прокручування лише в тому випадку, якщо він дійсно необхідний; тобто, наприклад, якщо текстова область містить лише один рядок, то повзунок на вертикальній смузі прокручування не буде.

Рис. 5.11.Створення горизонтальної смуги прокручування

Зауваження

Інтерактивність смуги прокручування, як і інших елементів керування, поміщених у Flash-фільм, «проявляється» лише після його експорту у формат SWF, а також у режимі тестування фільму. Щоб перейти в такий режим, необхідно в меню Control основного вікна Flashвибрати Test Movie (Тестування фільму) або Test Scene (Тестування сцени).

Якщо вам не вдалося отримати смугу прокручування бажаного типу в результаті перетягування ScrollBar, ви можете встановити його вручну. Для цього необхідно:

  1. Увімкнути інструмент Arrow і клацнути мишею на тій смузі прокручування, яка вас не послухалася, щоб вибрати її.
  2. У панелі інспектора властивостей цього елемента (рис. 5.12) клацнути в полі властивостей елемента, на рядку Horizontal (на рис. 5.12 вона виділена сірим кольором); в результаті в рядку з'явиться вікно списку, що розкривається.
  3. Клацнути на кнопці списку і у вікні (мал. 5.13) вибрати значення true (істина), якщо вам потрібна горизонтальна смуга прокручування або false (брехня), якщо ви хочете отримати вертикальну смугу прокручування.

Після того, як текстова область буде доповнена смугами прокручування, можна увімкнути інструмент Text, клацнути всередині області і ввести необхідний текст.

Рис. 5.12.Інспектор властивостей елемента ScrollBar

Рис. 5.13.Установка виду смуги прокручування

Порада

Якщо ви використовуєте в текстовому полі кирилицю, то після конвертування фільму у формат SWF або під час тестування фільму текст може відображатися не коректно (з використанням іншої кодової таблиці, наприклад, західноєвропейської). Щоб уникнути цього, до публікації фільму встановіть у діалоговому вікні Character Options (див. рис. 5.8) перемикач All Characters.

Редагований текст

Текст, що редагується (Input Text) - текстове поле такого типу призначене для введення та редагування тексту читачем Web-сторінки.

Як було зазначено вище, текстове поле, що редагується, призначене для отримання від користувача деякої інформації. Наприклад, це може бути запит до бази даних, яка розташована на сервері, або назва сцени фільму, на яку хотів би перейти відвідувач сайту.

Формат інспектора властивостей для встановлення атрибутів тексту, що редагується, показаний на рис. 7.14.

Порівняно з інспектором властивостей динамічного тексту тут є такі особливості:

Рис. 5.14.Формат інспектора властивостей тексту, що редагується

  • відсутня текстове поле URL і пов'язаний з ним список Target, що розкривається;
  • недоступна (заблокована у натиснутому стані) кнопка Selectable; це цілком закономірно: редагований текст обов'язково має бути обраним;
  • є текстове поле Maximum Characters (максимальна кількість символів); у цьому полі слід зазначити ціле число, яке визначає, скільки символів дозволяється ввести читачеві.

Параметри поля редагування, як і параметри динамічного тексту, можуть змінюватись засобами мови ActionScript. Щоб використати таку можливість, слід призначити полю редагування унікальне ім'я та (за потреби) вказати ім'я пов'язаної з ним змінної.

Як і для динамічного тексту, для поля редагування дозволяється створювати смуги прокручування.

Застосування візуальних ефектів

Як було зазначено на початку глави, поряд зі стандартними засобамиформатування тексту Flashтакож підтримує можливість створення специфічних ефектів. До них, зокрема, належать масштабування тексту, нахил, поворот, дзеркальне відображення. Після виконання будь-якої з операцій трансформації текст залишається текстом, тобто його, як і раніше, можна редагувати не як графічний об'єкт, а як набір текстових символів лише ілюстрацією деяких можливостей Flash. На рис. 5.15 показано текстову область, вміст якої можна прокручувати навіть після того, як вона була нахилена.

Рис. 5.15.Ілюстрація можливостей Flashпо роботі з текстом

Ще раз повторимо, що трансформований текст залишається доступним для редагування розробки фільму. Щоб перейти в режим редагування тексту, слід увімкнути інструмент Text і двічі клацнути на текстовому полі. Після цього можна продовжити введення тексту, видалити символи або виділити деякий фрагмент тексту, щоб, наприклад, скопіювати його в буфер обміну (рис. 5.16).

Для виконання потрібних перетворень текстове поле має бути вибрано за допомогою інструмента Arrow або Free Transform. Однак в останньому випадку два модифікатори інструменту Free Transform (а саме Distort та Envelope) залишаються недоступними. Щоб використовувати їх можливості, необхідно перейти в режим редагування тексту.

Рис. 5.16.Редагування трансформованого тексту

Посимвольне редагування тексту

Для модифікації окремих символів тексту щодо нього слід застосувати процедуру розбиття - Break Apart. При цьому можливі два рівні розбиття:

  • поділ тексту на символи із збереженням властивостей кожного їх як окремого фрагмента тексту;
  • перетворення символів тексту на графічні об'єкти.

Зауваження

Процедуру розбиття можна застосувати до текстового поля будь-якого типу (статичного, динамічного та редагованого), проте вже після розбиття першого рівня текст перетворюється на статичний.

Розглянемо два зазначені вище варіанти докладніше. Для поділу тексту на символи необхідно:

  • Вибрати текстове поле, що підлягає розбиттю (текст у ньому має бути вже набраний) за допомогою інструментів Arrow, Free Transform або Text.
  • У меню Modify основного вікна виберіть команду Break Apart.

Візуальною ознакою розбиття є те, що кожен символ тексту укладено в окрему рамку (рис. 5.17, праворуч).

Над кожним із символів після розбиття можуть бути виконані будь-які операції, допустимі для «самостійного» текстового поля, зокрема:

  • заміна на інший текстовий символ (тобто звичайне редагування); для цього символ, що редагується, потрібно вибрати за допомогою інструмента Text (рис. 5.18, зліва);

Рис. 5.17.Після розбиття кожен символ тексту укладено в окрему рамку

  • переміщення на нову позицію; для цього достатньо включити інструмент Arrow або Free Transform, підвести вказівник миші до символу і, коли біля покажчика з'явиться символ переміщення, натиснути ліву кнопкумиші та перетягнути символ (рис. 5.18, у центрі);
  • масштабування, поворот та інші види трансформації, доступні для текстової області (рис. 7.18, праворуч); для цього символ має бути вибраний за допомогою інструмента Free Transform.

Рис. 5.18.Приклади операцій посимвольного редагування

Крім того, можна змінити колір символу та автоматичний розподіл символів по шарах сцени. Застосування шарів буде розглянуто у розділі «Створення анімації», тому поки що пояснимо суть названої операції. Для кожного символу тексту буде створено окремий шар, і символи будуть автоматично розподілені за цими шарами. За замовчуванням імена створених шарів збігаються з символами, що на них розміщені (рис. 5.19).

Щоб виконати автоматичне розподілення символів за шарами, достатньо вибрати в меню Modify команду Distribute to Layers (Розподілити за шарами).

Тепер про те, чого не можна зробити із символами після одноразового розбиття текстової області:

  • до них не можна застосувати модифікатори Distort та Envelope інструменту Free Transform;
  • для них не можна використовувати градієнтну або растрову заливку;
  • їх можна редагувати за допомогою інструментів малювання.

Щоб позбавитися всіх цих «не можна», достатньо повторно застосувати до текстових символів процедуру розбиття Break Apart. Після цього ви можете робити із символами все, що вам підкаже вашу уяву. На рис. 7.20 - далеко не найвитонченіший варіант редагування текстового символу.

Рис. 5.19.Результат автоматичного розподілу символів за шарами

Рис. 5.20.Приклад модифікації символу тексту після виконання процедури Break Apart

Зауваження

    1. Якщо текстове поле містить єдиний символ, то після одноразового застосування процедури Break Apart він доступний для редагування як графічний об'єкт.
    2. Процедура Break Apart застосовується лише до контурних шрифтів TrueType. Растрові шрифти зникають з екрана, якщо ви спробуєте застосувати до них зазначену операцію.

Автоматична заміна шрифту

Коли ви працюєте з Flash-фільмому форматі FLA, FlashПри необхідності може замінювати шрифти, які використовуються за замовчуванням, тими, що встановлені на вашому комп'ютері. дозволяє вибрати найбільш підходящий, на ваш погляд, варіант заміни.

Зауваження

Заміна шрифту виконується лише на час редагування фільму (тобто на час роботи з FLA-файлом). Під час відтворення фільму використовується той шрифт, який було вказано під час створення фільму.

Про відсутність шрифту Flash MX повідомляє вам безпосередньо під час відкриття FLA-файлу. Відповідна інформація виводиться у спеціальному діалоговому вікні.

Це вікно містить дві кнопки:

  • Choose Substitute (Вибрати заміну), яка дозволяє відкрити діалогове вікно Font Mapping (Схема шрифтів) для опису схеми заміни відсутніх шрифтів;
  • Use Default (Використовувати за замовчуванням), клацання на якій забезпечує заміну відсутніх шрифтів відповідно до наявної схеми заміни; якщо ви завжди (або майже завжди) збираєтеся використовувати цю схему, то перш ніж клацнути на кнопці, поставте прапорець Don't warn me again (He нагадувати мені).

Щоб описати схему варіантів заміни, у вікні Font Mapping необхідно виконати такі дії:

  1. Клацніть у рядку відсутнього шрифту.
  2. У розкривному списку шрифтів, встановлених на комп'ютері, вибрати найбільш підходящий.
  3. Якщо ви вважаєте за краще використовувати як заміну один із фізичних шрифтів Flash, то виберіть його в списку Substitute Font, що розкривається, розташованому в нижній правій частині вікна.

Зауваження

Щоб згодом скоригувати використовувану схему заміни, слід в меню Edit основного вікна вибрати команду Font Mapping і в діалоговому вікні, що відкрилося, внести необхідні зміни.

На завершення відзначимо ще одну особливість роботи з текстовою інформацієюв. Ви можете перетворити шрифт на символ бібліотеки, що розділяється, щоб використовувати його в інших фільмах. У цьому випадку необхідний шрифт завантажується динамічно під час відтворення Flash-фільма на комп'ютері користувача (відвідувача сайту) Такий механізм дає змогу зменшити розмір фільму. Докладніше про застосування бібліотек розказано у дев'ятому розділі – «Застосування символів».