Снова вернёмся к теме всплывающих подсказок для флеш-приложений, но сегодня рассмотрим создание tooltip-ов для проектов, написанных на ActionScript 2.0. Мы не будем создавать всплывающие подсказки с нуля, а воспользуемся уже существующим классом ToolTipClass (прилагается к исходнику) от Nathan-а Derksen-а.
Работать с этим классом довольно просто. Первым делом подключим класс к нашему флеш-приложению.
Код ActionScript 2.0:
import ToolTipClass;
Затем создадим экземпляр класса ToolTipClass, которому в качестве единственного параметра передадим мувиклип-контейнер для будущей всплывающей подсказки.
Код ActionScript 2.0:
var toolTip:ToolTipClass = new ToolTipClass(_root);
Через созданный экземпляр класса мы имеет возможность настроить внешний вид нашей подсказки. Настроить можно следующие параметры:
- delay - задержка в миллисекундах до появления всплывающей подсказки;
- shadowEnabled - наличие (true) или отсутствие (false) тени у всплывающей подсказки;
- fillColour - цвет самой подсказки;
- width - ширина всплывающей подсказки (всплывающая подсказка является многострочной и, если текст не помещается в одну строчку, то автоматически переносится на новую).
Для примера создадим всплывающую подсказку красного цвета, шириной 100 px и без тени. Эта подсказка будет иметь задержку появления в 100 миллисекунд.
Код ActionScript 2.0:
toolTip.delay = 100;
toolTip.shadowEnabled = false;
toolTip.fillColour = 0xff0000;
toolTip.width = 100;
Но на данном этапе наша подсказка бессмысленна, так как мы её не видим. Давайте сделаем так, чтобы она возникала при наведении курсора мышки на какой-то объект, размещённый на сцене флеш-ролика. Таким объектом пусть будет кнопка (или мувиклип) под именем btn. Как вы наверно знаете, чтобы отследить наведение и увод курсора мышки на объект используются события onRollOver и onRollOut соответственно. Итак, добавляем нашей кнопке btn всплывающую подсказку.
Код ActionScript 2.0:
/*
подключаем класс
*/
import ToolTipClass;
/*
создаём экземпляр класса и настраиваем внешний вид подсказки
*/
var toolTip:ToolTipClass = new ToolTipClass(_root);
toolTip.delay = 500;
toolTip.shadowEnabled = true;
toolTip.fillColour = 0xdddddd;
/*
добавляем всплывающую подсказку к объекту на сцене флеш-ролика
*/
btn.onRollOver = function() {
toolTip.setText("Это кнопка!");
};
btn.onRollOut = function() {
toolTip.clearText();
};
Здесь методом setText() мы создаём подсказку для кнопки btn. В качестве параметра у метода setText() указывается текст самой всплывающей подсказки. А метод clearText(), как не трудно догадаться, убирает подсказку при уводе курсора мышки с кнопки btn.
У класса ToolTipClass есть ещё метод setHTML(), который позволяет во всплывающей подсказке использовать HTML-теги (но не забывайте, что ActionScript поддерживает далеко не все html-теги).
Код ActionScript 2.0:
/*
подключаем класс
*/
import ToolTipClass;
/*
создаём экземпляр класса и настраиваем внешний вид подсказки
*/
var toolTip:ToolTipClass = new ToolTipClass(_root);
toolTip.delay = 500;
toolTip.shadowEnabled = true;
toolTip.fillColour = 0xdddddd;
//toolTip.width = 200;
/*
добавляем всплывающую подсказку к объекту на сцене флеш-ролика
*/
btn.onRollOver = function() {
toolTip.setHTML("<u>Это</u> <b>кнопка</b>!");
};
btn.onRollOut = function() {
toolTip.clearText();
};
Можно встроить в подсказку изображение с помощью html-тега img (но, честно, это не самая лучшая идея). Если вам надо в подсказке перенести текст на новую строку, то делаем это с помощью \n.
Код ActionScript 2.0:
toolTip.setText("Это \n кнопка \n № 1!");
Ну и, наконец, давайте просто посмотрим на результат добавления всплывающих подсказок, созданных классом ToolTipClass. Смотрим...
Исходник под Macromedia Flash 8 и класс ToolTipClass скачиваем здесь.