Ещё одна всплывающая подсказка на ActionScript 3.0

Сегодня я продолжу недавно начатую тему всплывающих подсказок для флеш-приложений на ActionScript 3.0 и опишу работу с ещё одним интересным классом OBO_ToolTip от Devon O. Wolfgang. Данный класс тоже реализует работу всплывающих подсказок в флеш-роликах, но делает он это иначе, чем в ранее рассмотренном классе.

Давайте для начала просто посмотрим, какие подсказки позволяет создать класс OBO_ToolTip. Итак, смотрим...

Загрузить Adobe Flash Player

С помощью данного класса можно создать очень симпатичные всплывающие подсказки с закруглёнными углами.

Загрузить Adobe Flash Player

Теперь посмотрим, как можно воспользоваться классом OBO_ToolTip в наших флеш-приложениях.

В первую очередь мы должны подключить сам класс OBO_ToolTip к нашему проекту. Для этого на главной временной шкале (сейчас код будем писать именно там) пишем примерно следующее...

Код ActionScript 3.0:

import OBO_ToolTip;

То есть с помощью инструкции import мы должны указать путь до класса. В данном случае класс и флеш-проект находятся в одной и той же папке (и использование import в этом конкретном случае не является обязательным).

Затем мы должны настроить нашу будущую всплывающую подсказку. Делается это следующим образом...

Код ActionScript 3.0:

var toolTip:OBO_ToolTip = OBO_ToolTip.createToolTip(myRoot, font, tipColor, tipAlpha, tipShape, fontColor, fontSize, advRendering);

где:

- myRoot - контейнер, внутри которого будет размещаться созданная нами всплывающая подсказка;

- font - этот параметр отвечает за используемый в подсказке шрифт и в качестве значения принимает экземпляр класса Font или экземпляр класса, который расширяет класс Font (о том, как встроить шрифт в флеш-ролик, говорилось в прошлом посте);

- tipColor - цвет всплывающей подсказки;

- tipAlpha - прозрачность всплывающей подсказки в диапазоне от 0 (полная прозрачность) до 1 (полная непрозрачность);

- tipShape - форма всплывающей подсказки;

Доступно два значения:

1.) SQUARE_TIP - прямоугольная форма;

2.) ROUND_TIP - с закруглёнными углами.

- fontColor - цвет текста;

- fontSize - размер шрифта;

- advRendering - данному параметру рекомендуется присваивать значение false, если вы используете пиксельные шрифты, и true - для прочих шрифтов.

Теперь мы, наконец-то, можем прикрепить подсказку к конкретному объекту. Например, присвоим подсказку мувику по имени btn...

Код ActionScript 3.0:

btn.addEventListener(MouseEvent.ROLL_OVER, overBtn); btn.addEventListener(MouseEvent.ROLL_OUT, outBtn); function overBtn(event:MouseEvent):void { toolTip.addTip("Это кнопка!"); } function outBtn(event:MouseEvent):void { toolTip.removeTip(); }

Если приведённый выше код остался вам непонятен, то стоит обратится к основам создания кнопок в ActionScript 3.0.

Объединим описанные ранее этапы создания всплывающей подсказки в один законченный пример...

Код ActionScript 3.0:

/* импортируем класс */ import OBO_ToolTip; /* настройка всплывающей подсказки */ var toolTip:OBO_ToolTip = OBO_ToolTip.createToolTip(this, new Ariac(), 0xff0000, 0.5, OBO_ToolTip.ROUND_TIP, 0xffffff, 16, false); /* подключаем наши всплывающие подсказки к объектам на сцене флеш-ролика */ btn.addEventListener(MouseEvent.ROLL_OVER, overBtn); btn.addEventListener(MouseEvent.ROLL_OUT, outBtn); function overBtn(event:MouseEvent):void { toolTip.addTip("Это кнопка!"); } function outBtn(event:MouseEvent):void { toolTip.removeTip(); }

Вот и всё. Конечно, использование такой подсказки имеет свои недостатки (например, код не такой компактный, как в примере из предыдущего поста), но, однако, есть и свои неоспоримые преимущества. Всплывающая подсказка, созданная с помощью класса OBO_ToolTip, имеет множество полезных настроек, что положительно сказывается на конечном результате.

Исходник под Adobe Flash CS5.5 и сам класс OBO_ToolTip можно скачать здесь.

Примечания:

[!] Если кого-то интересует использование OBO_ToolTip в ООП, то смотрите листинг самого класса. Там автор приводит пример встраивания всплывающей подсказки в тело класса (см. исходник).

Автор: admin

Дата добавления: 2011-10-25

Просмотров: 8213

Рейтинг поста: +16-

Правила перепечатки

Социальные закладки:
Комментарии:
Комментатор
Комментарий добавил(а): edapskov
Дата добавления: 2014-03-15
Ничего из перечисленного не поддерживается. Если вам это очень сильно необходимо, то придётся переписывать класс.

Самое простое, что можно сделать, поменять строчку

_tipText.text = words;

на

_tipText.htmlText = words;

внутри класса.

После этого можно будет использовать html-форматирование во всплывающих подсказках. Вот только Flash поддерживает очень мало html-тегов (для удобства можно воспользоваться этим - http://edapskov.ru/pages.php?id=213).
Комментатор
Комментарий добавил(а): Дмитрий
Дата добавления: 2014-03-15
Добрый день, расскажите, можно ли применять жирность текста, наклон, прикрепление картинки? Если да, то помогите пожалуйста, каким образом?:) Спасибо.
Комментатор
Комментарий добавил(а): edapskov
Дата добавления: 2013-10-26
Ну надо же что-нибудь время от времени постить, а то я совсем обленился :-)
Комментатор
Комментарий добавил(а): Вася
Дата добавления: 2013-10-25
edapskov, ох спасибо. Вы целую статью сделали. Мне даже как-то не удобно, что столько времени отнял своим вопросом.
Комментатор
Комментарий добавил(а): edapskov
Дата добавления: 2013-10-23
Комментатор
Комментарий добавил(а): Вася
Дата добавления: 2013-10-23
Не понимаю, чем ROLL_OVER отличается от MOUSE_OVER. В том курсе, который я изучаю, сказано, что ROLL_OVER срабатывает при наведении мыши с зажатой кнопкой. Но у вас это не так. И у меня, что с ROLL_OVER, что с MOUSE_OVER получается одно и тоже. В чём тогда разница? Тоже самое касается и ROLL_OUT и MOUSE_OUT.
Комментатор
Комментарий добавил(а): edapskov
Дата добавления: 2013-02-22
Настя, к сожалению, со стандартными шрифтами OBO_ToolTip не работает. Нужен именно встроенный шрифт (в посте есть ссылка на урок, где расписано встраивание шрифта + рабочий пример в исходнике).
Комментатор
Комментарий добавил(а): Настя
Дата добавления: 2013-02-22
Внедряю стандартный системный шрифт Verdana. Слова на русском языке не поддерживает, а если пишу латинскими - всё показывает. Почему так?
Комментатор
Комментарий добавил(а): edapskov
Дата добавления: 2012-10-28
Владимир, Ariac - это шрифт. Его надо внедрить. Более подробно смотрите тут - http://edapskov.ru/pages.php?id=61 . Шрифт, естественно, может быть и другой.
Комментатор
Комментарий добавил(а): Владимир
Дата добавления: 2012-10-27
Привет, Автор!

Спасибо за материал!

Немного не получается применить.
Подскажи пожалуйста в коде вызова метода класса в твоем примере
var toolTip:OBO_ToolTip = OBO_ToolTip.createToolTip(this, new Ariac(), 0xff0000, 0.5, OBO_ToolTip.ROUND_TIP, 0xffffff, 16, false);

вызов new Ariac() - у меня выводит ошибку. Что ты сделал, чтобы оно работало?
Добавить комментарий:







[ + ] помощь по форматирование текста

Идиот-тест

Если все обязательные поля (отмечены * ) заполнены необходимой информацией, то нажимаем кнопку Добавить комментарий.

Страница 1 из 2: 12
Меню
Подписка
Рубрики
Метки
Последние комментарии
Рейтинг постов
Реклама
Друзья
География гостей
Статистика
Яндекс.Метрика