Страница 1 из 1

Динамический tooltip

Добавлено: 23 сен 2010, 22:25
Seter17
Сейчас делаю тултип для приложения, но рпоблема в том что при наведении на каждый элемент - текст должен быть разным
Пробовал сделать так :

Код: Выделить всё

step1.addPhoto.disk_Button.addEventListener(MouseEvent.MOUSE_OVER, showTooltip(MouseEvent.Mouse_OVER,"text")); function showTooltip(e:MouseEvent, mess:String):void{    tooltip.visible = true;    tooltip.x = stage.mouseX;    tooltip.y = stage.mouseY;    tooltip.tooltipText.text = mess;    addChild(tooltip);} 
разумеется не сработало, так вот вопрос, как сделать добавление текст уже на уровне срабатывания Listenera?
ещё вопрос, можно ли как-нибудь сделать задержку появления тултипа?

Re: Динамический tooltip

Добавлено: 24 сен 2010, 04:21
bodnar
Во первых пользуйтесь тегами для оформления кода.
Во вторых задержку можно сделать. Класс timer. Внутри обработчика события добавляете слушателя на прошествие несколько милисекунд и уже внутри этого события отрисовываете текст.
В третьих каждому объекту задайте свойство подсказка и тогда

Код: Выделить всё

tooltip.tooltipText.text = e.target.vsplavaushiy_text;

Re: Динамический tooltip

Добавлено: 24 сен 2010, 09:35
Seter17
с всплыванием уже разобрался, сам, сделал через setTimeout, но с динамикой вопрос остался)

Re: Динамический tooltip

Добавлено: 24 сен 2010, 12:26
catamount5
У Вас код неправильный.
Сделала бы так (про динамично меняющийся текст):

Код: Выделить всё

step1.addPhoto.disk_Button.addEventListener(MouseEvent.MOUSE_OVER, showTooltip); function showTooltip(e:MouseEvent):void {    if (сделала бы здесь проверку, какая кнопка нажата) {         tooltip.tooltipText.text = mess;         // переменную mess объявила заранее или здесь    }} 
Кстати, если Вы работаете с addChild и removeChild, то зачем Вам нужен пережиток AS2-го - visible ?

Re: Динамический tooltip

Добавлено: 28 сен 2010, 16:33
Seter17
да, согласен, код уже профакторил, а как делать проверку на нажатие кнопки?

Re: Динамический tooltip

Добавлено: 04 окт 2010, 15:26
catamount5
Seter17 писал(а):да, согласен, код уже профакторил, а как делать проверку на нажатие кнопки?
Я всегда делаю так (может кто-то более оптимальнее посоветует). Заранее определяю булевую переменную. И даю ей значение false (т.е. кнопка еще не нажата)
В функции-слушателе, которая отвечает за нажатие кнопки даю этой переменной значение true (т.е. кнопку нажали).
А в приведенной выше функции мы просто проверяем эту переменную - true она или false
А в той функции, которая отвечает за "отжатие" этой кнопки не забываем присвоить переменной false

Re: Динамический tooltip

Добавлено: 13 окт 2010, 11:58
Seter17
я неправильно сформулировал вопрос =) интересовало как определить над какой кнопкой курсор. Решение нашлось через MouseEvent.OVER
и event.target.name; тему можно закрыть