Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   как отменить скрипт (http://www.flasher.ru/forum/showthread.php?t=166383)

Bankomat 02.09.2011 12:00

как отменить скрипт
 
сделал "всплывающую" подсказку, при наведении на объект мышки, подскажите как при сведении сделать чтоб эта подсказка убиралась? удалялся мувик который атачу "help"
Код AS1/AS2:

on (rollOver) {
attachMovie("help", "help", 1000);
onMouseMove = function () {
help._x = _xmouse;
help._y = _ymouse;
updateAfterEvent();
};
}


Sergey_A 02.09.2011 12:30

ИМХО, проще менять прозрачность вашего мувика "help": help._alpha="100" и 0, соответственно.
А вообще, не понял проблемы. Пишете обработчик для вашего объекта:
Код AS1/AS2:

mc.onRollOut = function() {
help.removeMovieClip();
}

Так, кстати, писать правильнее - в первом кадре, то есть.
С адресацией разбирайтесь сами, так как из вашего сообщения мало что понятно.

mooncar 02.09.2011 13:21

Вложений: 1
Автор, не пишите код на объектах.
Sergey_A, не надо делать прозрачность, к чему лишние объекты на сцене, когда они не нужны?
Автор верно аттачит мувик с хинтом из библиотеки.
Решение (код пишется в кадре):
Код AS1/AS2:

mc.onRollOver = function  () 
{
        currentHelp = _root.attachMovie('help', 'help', 1000, {_x:_root._xmouse - 30, _y:_root._ymouse - 50});
        currentHelp.onMouseMove = helpMouseMove;
};
 
mc.onRollOut = mc.onDragOut = function  ()
{
        delete currentHelp.onMouseMove ;
        currentHelp.removeMovieClip();
};
 
function helpMouseMove ()
{
        this._x = _root._xmouse - 30;
        this._y = _root._ymouse - 50;
        updateAfterEvent();       
}

mc - это имя вашего объекта на сцене, при наведении на который появляется подсказка.
Смещения -50 и -30 сделаны, чтобы подсказка не была приклеена к курсору, это неудобно.

Bankomat 03.09.2011 09:00

всем спасибо, помогли
единственное не пойму почему не нужно на объектах писать код?
если писать в кадрах то у меня проблема с адресацией объектов:) если писать _root то объекты должны лежать в главной сцене, а у меня на главной сцене только один объект в котором уже все лежит

mooncar 03.09.2011 11:03

Цитата:

Сообщение от Bankomat (Сообщение 1027874)
всем спасибо, помогли
единственное не пойму почему не нужно на объектах писать код?

Потому что это неправильно. Причин масса - и неудобство редактирования тут и там разбросанного кода, и как раз таки неочевидность адресации и много чего еще. Просто не делайте так. :)
Цитата:

Сообщение от Bankomat (Сообщение 1027874)
если писать в кадрах то у меня проблема с адресацией объектов:) если писать _root то объекты должны лежать в главной сцене, а у меня на главной сцене только один объект в котором уже все лежит

Совершенно не обязательно. Объекты могут быть расположены где угодно. Разбирайтесь уже таки с адресацией, вы вон с 2004 года (судя по дате регистрации) как-то с флешем связаны, уже пора бы (не в обиду):)!
Если у вас на сцене объект mc_all, и все лежит в нем, то пути будут такие:
mc_all.mc1, mc_all.mc2 и тд.
Что такое интсанс-нейм, понимаете? То есть имя экземпляра на сцене, а не в библиотеке.
_root писать не обязательно, если ваш код в кадре на главном таймлайне..

Bankomat 04.09.2011 07:36

mooncar, большое спасибо, возьму на заметку
всегда хотел обучиться флешу, но самостоятельно нет времени:) поэтому все что мне не понятно автоматом игнорируется... мне бы на курсы флеш) но у нас нет таких в городе

mooncar 04.09.2011 11:00

Пожалуйста, можете отблагодарить кнопочкой с весами. Какой-нибудь самоучитель не пробовали? Не так уж много времени нужно потратить - просто прочитать хоть на сон грядущий, без компа, чтобы уяснить кое-что.. зато сэкономите время в будущем.


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

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