![]() |
|
||||||||||
|
|||||
|
Регистрация: Jul 2006
Адрес: Moscow
Сообщений: 14
|
Не до конца понимаю, как сделать 2х позиционную кнопку(Pause/Play). Имея при этом 4 изображения - Два изображения для обычного состояния кнопок и два при наведении, изображения формата *.png. До этого применяла обычную стандартную кнопку и прописывала код
Но не меняла в ней надписи типа on/off, а сейчас хотелось бы сделать покрасивше. Подскажите, пожалуйста. |
|
|||||
|
ветеран форума
|
Вместо кнопки - мувиклип.
При нажатии - переназначение обработчика события onRollOver, чтобы показывалась другая картинка, если надо - изменение текста подписи. Последний раз редактировалось DarkLight; 16.08.2006 в 19:15. |
|
|||||
|
меценат
|
Этот код сделай для кнопки игра/пауза :
_root.zzz = 1;
_root.button.onPress = function() {
_root.zzz = -_root.zzz;
};
_root.onEnterFrame = function() {
if (_root.zzz == -1) {
_root.button.gotoAndStop(2);
}
if (_root.zzz == 1) {
_root.button.gotoAndStop(1);
}
};
Этот код для кнопки навел/отвел : _root.mc.stop();
_root.mc.onRollOut = function() {
this.gotoAndStop(1);
};
_root.mc.onRollOver = function() {
this.gotoAndStop(2);
};
__________________
Безвыходных положений небывает © Барон Мюнхаузен=)Исходники |
|
|||||
|
ветеран форума
|
2D12
Лучше все-таки первый вариант: хитТесты - это пустая трата вычислительных ресурсов, т к будет каждый кадр вызываться gotoAndStop, да и сам хитТест тоже вещь не самая быстрая |
|
|||||
|
Регистрация: Jul 2006
Адрес: Moscow
Сообщений: 14
|
Я попробовала сама добиться чего-то...в итоге получилось много кода, но работающая кнопка. Я наверное слишком замудрила, уровень моих знаний во флеше не позволил мне все это упростить
У меня две кнопки одна за другой с 3мя состояниями. названия - btn_pause_disabled,btn_pause,btn_pause_over для кнопки "Пауза" btn_play_disabled,btn_play,btn_play_over для кнопки "Играть" btn_pause_disabled.onRollOver=function()
{
_root.btn_pause_disabled._visible=false;
}
btn_pause.onRollOut=function()
{
_root.btn_pause_disabled._visible=true;
}
btn_pause.onPress = function ()
{
_root.btn_pause._visible=false;
_root.stop();
btn_pause_over.onRollOut = function ()
{
_root.btn_pause._visible=false;
_root.btn_pause_over._visible=false;
_root.btn_play_disabled._visible=true;
}}
btn_play_disabled.onRollOver=function()
{
_root.btn_play_disabled._visible=false;
}
btn_play.onRollOut=function()
{
_root.btn_play_disabled._visible=true;
}
btn_play.onPress = function ()
{
_root.btn_play._visible=false;
_root.play();
}
btn_play_over.onRollOut = function ()
{_root.btn_play._visible=true;
_root.btn_pause._visible=true;
_root.btn_pause_over._visible=true;
_root.btn_pause_disabled._visible=true;
}
|
|
|||||
|
меценат
|
Уважаемый DarkLight я никогда неусомнюсь что вы опытный програмист ,
но в данном вопросе вынужден с вами несогласится функции "onRoll" работают некоректно и очень плохо отлавливают события , соглашусь с вами что "хитТест" не идеальный вариант но и нетакой плохой что бы им пренебрегать в определенных ситуациях , я же предпочитаю математически задовать контур фигуры так я получаю самый желанный вариант .
__________________
Безвыходных положений небывает © Барон Мюнхаузен=)Исходники |
|
|||||
|
ветеран форума
|
2D12
Я согласен, что onRoll не идеален, но здесь 1 кнопка, и проблемы врядли возникнут. Если несколько кнопок рядом повешены на онРоллы, и РоллАут и РоллОвер практически одновременны, то действительно одни проблемы. А про математическое кодирование согласен на 100% |
![]() |
![]() |
Часовой пояс GMT +4, время: 09:58. |
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | |
| Опции просмотра | |
|
|