Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Всплывающая подсказка. (http://www.flasher.ru/forum/showthread.php?t=129487)

MaxFX 02.09.2009 19:04

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

cleptoman 02.09.2009 19:23

ну сделайте суперкласс своим ячейкам, который будет диспатчить вверх наведение, а там ловите и делайте уже с этим что хотите.

MaxFX 02.09.2009 19:56

Цитата:

Сообщение от cleptoman (Сообщение 847670)
ну сделайте суперкласс своим ячейкам, который будет диспатчить вверх наведение, а там ловите и делайте уже с этим что хотите.

Просто количество ячеек будем произвольно генерироваться прям в коде, поэтому к каждому объекту добавлять обработчик проблематично.

Zik. 02.09.2009 20:31

ну сделайте класс ячеек и там пихайте обработчик

cleptoman 02.09.2009 23:30

не вижу совсем проблеммы. самый примитивный вариант

Код AS3:

//предположим что у нас уже существует некий массив с ссылками на ваши мувики
// spriteArray:Array;
 
function onClickHandler(e:MouseEvent){
var sprite:Sprite = e.target as Sprite;
trace(sprite.x);
trace(sprite.y);
}
 
// ... а тем временем где то в глубинах кода
var len:Number = spriteArray.length;
var i:Number;
var sprite:Sprite;
for(i = 0; i < len; i++ ){
sprite = spriteArray[i] as Sprite;
sprite.addEventListener(MouseEvent.CLICK,onClickHandler);
}

п.с. ми пардон, если там ошибки где, писал тут.

MaxFX 02.09.2009 23:40

Подскажите как тогда задержку для всплывающей подсказки сделать. Чтобы это было не очень накладно по ресурсам.

cleptoman 02.09.2009 23:53

ну таймер повесьте..а по онМаусМоув грохайте его и прячте свой попап

MaxFX 03.09.2009 00:54

Цитата:

Сообщение от cleptoman (Сообщение 847763)
ну таймер повесьте..а по онМаусМоув грохайте его и прячте свой попап

Опять же для каждого спрайта создавать таймер придется, может есть не столь радикальное решение.

willis83 03.09.2009 02:28

Была же тема точно такая же, там примеры и с задержкой были. Ищите по форуму

MaxFX 03.09.2009 03:39

Цитата:

Сообщение от willis83 (Сообщение 847781)
Была же тема точно такая же, там примеры и с задержкой были. Ищите по форуму

Спасибо, буду искать


Часовой пояс GMT +4, время: 17:26.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.