Просмотр полной версии : Как заставить исчезать мувик при потере фокуса
Добрый день!
Помогите, не могу понять, как сделать чтобы работало :D:D:D
Вот на этой страничке (http://www.golandart.ru/newsite/art.html)
в верхнем левом углу у меня высовывается кнопка, при нажатии которой приплывает из вне мувик, который при окончании движения становится плашкой с кнопками. Внутри мувика кнопки не работают, поэтому на последнем кадре я заменяю мувик на плашку с кнопками. Мне нужно, чтобы при убирании мыши с этой области все начиналось с кадра 1, то есть с выезда кнопки "Меню". Не могу понять, как это сделать, никакие
on (rollOut) {
gotoAndPlay(1);
}
не помогают да и, видимо, не должны.
Что бы такого сделать?
Заранее очень благодарна за подсказки.
И прошу прощения за идиотский вопрос начинающего лоха :))
Stargazer
21.05.2009, 19:08
Санимировать уплывание по аналогии с приплыванием.
или
Пустить анимацию задом наперёд при помощи простенького скрипта в onEnterFrame.
Gal4enochek
21.05.2009, 19:09
Если я правильно поняла, то может такое поможет:
это код в кадре главной шкалы, когда панель выехала
stop();
panel.onRollOut = function(){
_root.gotoAndPlay(1);
}
В том коде, что вы написали, gotoAndPlay(1) вызывается для объекта, который вызвал onRollOut , то есть для панельки.
Большое спасибо!
Однако есть проблема. Если кнопки с иконками внутри мувика, они не работают. Я их на последнем кадре разбиваю, однако если назначить по вашему совету, то как только курсор перемещается на одну из кнопок, панель уезжает, так как, видимо, считает, что событие произошло. Пробовала извратиться и положить прозрачную (alpha 0%) плашку по форме панели и ей назначить, чтобы перекрыть кнопки. Все работает, уезжает действительно когда надо. Но не работают кнопки...
:umnik2::confused:
Добавлено через 2 минуты
Залила новый вариант на сайт - получается игра "успей тыкнуть куда надо за полсекунды" :D:D:D может так и оставить, развивает реакцию :D
Stargazer
21.05.2009, 23:05
как только курсор перемещается на одну из кнопок, панель уезжает, так как, видимо, считает, что событие произошло.
Конкретно для вашего случая я бы предложил дополнить конструкцию ещё одной заплаткой: разрешайте уезд только в том случае, если координаты мыши за пределами вашей панели (сравнить координаты мыши и координаты и размеры панели), иначе - воспрепятствовать уезду.
Большое спасибо за подсказку, не подскажете заодно, с помощью каких команд это можно сделать, чтобы я хоть знала, что в хелпе искать, честно сказать я совсем почти ничего не знаю про AC, но очень хочу узнать.
Stargazer
21.05.2009, 23:33
var mc:MovieClip;
mc= ...???; // присваиваем ссылку на вашу невидимую панель
if (mc._xmouse >= 0 && mc._xmouse < mc._width && mc._ymouse >= 0 && mc._ymouse < mc._height){
// выполняется, если мышка внутри панели
} else {
// не внутри
}
Условие верно только в том случае, если ваш rectangle в указанном мувиклипе начинается в координатах 0, 0 и заканчивается ниже и правее.
P.S. По английски хорошо читаете?
СПАСИБО!!!
Да, читаю нормально по-английски, эту конструкцию знаю, т.к. изучала JS, но программист из меня хреновый, читать код могу, придумать сама - нет, а тут еще синтаксис другой.
Попробую сейчас.
Еще раз гигантское спасибо.
Stargazer
22.05.2009, 13:10
Да, читаю нормально по-английски
я совсем почти ничего не знаю про AC, но очень хочу узнать.
Тогда читайте по 10 минут справку в разделе AS2.0 language reference--AS Classes--MovieClip. Весь action script как на ладони. Ну, по крайней мере, самая общеупотребляемая часть.
имхо так:
http://195.128.96.36/flash/menu.fla
http://195.128.96.36/flash/menu.swf
zhalex, спасибо вам тоже.
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.