Чтение онлайн

на главную - закладки

Жанры

Macromedia Flash Professional 8. Графика и анимация

Дронов В. А.

Шрифт:

Самое интересное заключается в том, что оба клипа совсем не обязательно должны находиться в разных слоях (о слоях см. главу 5, о маскирующих слоях — главу 14). Кроме того, и маскирующий, и маскируемый клипы могут содержать сложную анимацию и даже двигаться. Ух, каких чудес можно натворить!

Давайте создадим новый документ Flash, поместим на рабочий лист клип, содержащий любое растровое изображение, а на него наложим клип с какой-либо простой геометрической фигурой. Назовем нижний клип masked, а верхний — mask. После этого привяжем к единственному

кадру анимации такой вот сценарий:

masked.setMask(mask);

mask.startDrag(true);

Первое выражение этого сценария маскирует клип-растровое изображение masked клипом mask. Второе выражение заставляет клип mask (т. е. маску) перемещаться вслед за курсором мыши.

Теперь запустим на воспроизведение созданный фильм в отдельном окне и начнем перемещать курсор мыши с места на место. Забавно получилось, не правда ли?

Кстати, маски, созданные путем вызова метода setMask, имеют приоритет над масками, созданными вручную. Иными словами, если мы создадим маскирующий слой с клипом-маской mask и замаскируем им другой клип masked, то выражение:

mask.setMask(masked);

сделает клип masked маской, а клип mask — маскируемым.

Маскируемый клип в данный момент времени может иметь только одну маску. Так, если для клипа masked вызвать метод setMask еще раз, но передать ему в качестве параметра клип mask2, то он станет новой маской для masked, а предыдущая маска mask "уйдет в отставку".

Чтобы убрать маску совсем, достаточно вызвать метод setMask с параметром null:

masked.setMask(null);

Работа с кнопками

А теперь поговорим о кнопках и работе с ними с помощью сценариев. (Подробнее о кнопках см. главу 18.)

Все находящиеся на рабочем листе кнопки, для которых было задано имя, представляют собой экземпляры объекта Button. Их создает сам Flash; нам же остается только использовать их свойства и методы.

Оператор typeof для кнопки возвращает строку "object" — это значит, что кнопка относится к объектному типу данных.

Свойства и методы объекта Button

По своим свойствам и методам объект Button во многом похож на объект movieclip. Имея весьма схожие наборы свойств и методов, эти два объекта зачастую ведут себя одинаково. В частности, объект Button поддерживает свойства х, _у, _xmouse, _ymouse, _height, _width, _alpha и _rotation, уже знакомые нам по объекту movieClip. Однако объект Button не поддерживает методы play, stop, gotoAndPiay, gotoAndStop и подобные им, так как назначение его все же иное, чем у объекта movieclip.

Так что кнопку можно рассматривать как очень специализированный, "урезанный" вариант клипа.

Рассмотрим специфические свойства объекта Button, которые обязательно пригодятся нам в работе с его экземплярами. (Кстати, многие из этих свойств поддерживаются и объектом movieclip, но редко используются в клипах.)

Свойство enabled позволяет разрешить или запретить пользователю нажимать кнопку. Оно имеет логический тип: значение true разрешает доступ к кнопке, а значение false — запрещает.

Свойство _visibie позволяет сделать кнопку видимой или невидимой. Оно имеет логический тип: значение true делает кнопку видимой, а значение false — невидимой. При этом невидимая кнопка также недоступна для нажатия.

Свойство useHandCursor задает, какую форму примет курсор мыши, если поместить его над кнопкой. Если задано значение true, то отображается курсор в виде "указующего перста" (как над гиперссылкой). Если же задано значение false, то курсор имеет вид обычной стрелки.

Известно, что обычные кнопки в окнах Windows-приложений можно нажимать, не только щелкая по ним мышью, но и нажимая клавишу <Space> основной клавиатуры. Для этого кнопка должна иметь фокус ввода, который даст ей возможность принимать нажатия клавиш клавиатуры. Кнопка, имеющая фокус ввода, выделяется точечным прямоугольником, окружающим ее надпись.

Фокус ввода можно перемещать с одной кнопки на другую, согласно особой последовательности, называемой порядком обхода. Каждая кнопка имеет свой уникальный номер в этом порядке. Для перехода на элемент управления с большим номером в порядке обхода нужно нажать клавишу <Таb>, для перехода на элемент управления с меньшим номером — комбинацию клавиш <Shift>+<Tab>.

Для задания порядка обхода кнопок Flash служат два свойства объекта Button. Рассмотрим их.

Свойство tabindex задает номер в порядке обхода для данной кнопки. Значением этого свойства может быть любое целое неотрицательное число.

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

btnForward.tabindex = 0;

btnBackard.tabindex = 1;

btnStop.tabindex = 2;

Также для этого можно воспользоваться панелью Accessibility, подробно описанной в главе 20.

Если ни для одной кнопки в фильме Flash не задан номер в порядке обхода (т. е. значение свойства tabindex равно undefined), Flash будет применять порядок обхода по умолчанию, и кнопки будут "обходиться" по нажатию клавиши <Таb> в том порядке, в котором они были созданы на рабочем листе. Также нужно иметь в виду, что значение undefined меньше любого числового, поэтому кнопки, для которых свойство tabindex не было задано, будут в порядке обхода первыми.

Поделиться:
Популярные книги

Измена. (Не)любимая жена олигарха

Лаванда Марго
Любовные романы:
современные любовные романы
5.00
рейтинг книги
Измена. (Не)любимая жена олигарха

Хозяйка дома в «Гиблых Пределах»

Нова Юлия
Любовные романы:
любовно-фантастические романы
5.75
рейтинг книги
Хозяйка дома в «Гиблых Пределах»

Фиктивный брак

Завгородняя Анна Александровна
Фантастика:
фэнтези
6.71
рейтинг книги
Фиктивный брак

На границе империй. Том 7. Часть 2

INDIGO
8. Фортуна дама переменчивая
Фантастика:
космическая фантастика
попаданцы
6.13
рейтинг книги
На границе империй. Том 7. Часть 2

Держать удар

Иванов Дмитрий
11. Девяностые
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Держать удар

Флеш Рояль

Тоцка Тала
Детективы:
триллеры
7.11
рейтинг книги
Флеш Рояль

Драконий подарок

Суббота Светлана
1. Королевская академия Драко
Любовные романы:
любовно-фантастические романы
7.30
рейтинг книги
Драконий подарок

Зауряд-врач

Дроздов Анатолий Федорович
1. Зауряд-врач
Фантастика:
альтернативная история
8.64
рейтинг книги
Зауряд-врач

По дороге на Оюту

Лунёва Мария
Фантастика:
космическая фантастика
8.67
рейтинг книги
По дороге на Оюту

Мастер 5

Чащин Валерий
5. Мастер
Фантастика:
попаданцы
аниме
5.00
рейтинг книги
Мастер 5

Не лечи мне мозги, МАГ!

Ордина Ирина
Фантастика:
городское фэнтези
попаданцы
фэнтези
5.00
рейтинг книги
Не лечи мне мозги, МАГ!

Измена. Право на семью

Арская Арина
Любовные романы:
современные любовные романы
5.20
рейтинг книги
Измена. Право на семью

Крепость над бездной

Лисина Александра
4. Гибрид
Фантастика:
боевая фантастика
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Крепость над бездной

Неудержимый. Книга XXI

Боярский Андрей
21. Неудержимый
Фантастика:
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Неудержимый. Книга XXI