![]() |
фиксация кнопок
есть три кнопки, нужно чтобы при нажатии одной - она фиксировалась, при нажатии другой все гасли, и фиксировалась нажатая. Вроде надо не кнопками ползоваться, а мувиками. Подскажите как, а то я не могу догнать... Пасиб! :)
|
делаешь три мувика по два кадра в каждом( не фиксированная кнопка и фиксированная), в первый фрейме каждого мувика поставь stop();
далее допустим ты их назвал как mc1, mc2, mc3 mc1.onRelease=function(){ mc1.gotoAndStop(2);} mc2.onRelease=function(){ mc2.gotoAndStop(2); mc1._visible=false; mc3._visible=false; } |
Спасибо, а если их 100 то в каждой это прописывать??
|
и еще в догонку если по этому принципу сделать onRollOver и onRollOut, то фиксация проподает, а хотелось бы, чтобы этот мувик вел себя как кнопка, + фиксация :)
|
Вложений: 1
Привет!
А так подойдет? |
Если у них один родитель, я думаю самое просто это перебор.
|
Цитата:
:confused: |
Сударь, вы ленитесь.
Воспользуйтесь переменной-триггером. Если радиокнопка включена, переменная равна 1: в обработчиках onRollOver, onRollOut проверяем переменную и в зависимости от её значения производим (или не производим) какие-то махинации. |
ну сделай ты мувики не с 2мя кадрами, а со столькими сколько тебе нужно чтобы перебрать все свои возможные положения кнопки. Или пользуйся управляющими переменными, как посоветовал nyctota.
|
да я вот тригеррами и пробовал делать, но где-то ошибочка... подсажите где?
flag=0; mc1.onRelease=function(){ col= new Color(mc1); col.setRGB(0x000066); flag=1; } mc1.onRollOver=function(){ if(flag == "0") { col= new Color(mc1); col.setRGB(0x000066); } } mc1.onRollOut=function(){ if(flag == "0") { col= new Color(mc1); col.setRGB(0xff9900); } } |
Используй тот код, что дал Жень Шень...
Далее не забудь, что переменная-триггер должна быть у каждой радиокнопки своя (ты же не хочешь их все сразу выключать?), типа Код:
this.flag |
Вложений: 1
А если так попробовать...
|
в принципе да, но если кнопок 100, то сложновато!!
попробовал так, но не выходит: Код HTML:
this[i].onRelease = function() { |
Алгоритм.
1. Событие onRelease(): -- ВСЕ кнопки возвращаем в состояние "notRelease" -- задаем ВСЕМ кнопкам триггер = 0; -- текущую кнопку переводим в состояние "Release" -- текущей кнопке задаем триггер = 1; 2. Событие onRollOver(): -- проверяем триггер текущей кнопки и, если он равен 1, текущую кнопку переводим в состояние "RollOver", в противном случае -- ничего не делаем; 2. Событие onRollOut(): -- проверяем триггер текущей кнопки и, если он равен 1, текущую кнопку переводим в состояние "RollOut", в противном случае -- ничего не делаем; |
а можно по подробнее по привиденному листингу, а то я что-то не могу разобраться. спасибо!
|
Что тебе не понятно? Если всё, то, уж прости, на то есть книжки и хэлп, если что-то конкретное -- спрашивай.
|
Вложений: 1
Привет!
ТАК? |
Вложений: 1
Да, поспешил - конец рабочего дня.
Вот исправленный вариант. |
да, большое спасибо! это именно то что мне надо!!!
|
| Часовой пояс GMT +4, время: 00:54. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.