|
|
« Предыдущая тема | Следующая тема » |
Опции темы | Опции просмотра |
|
|
|||||
Регистрация: Sep 2010
Сообщений: 1
|
изменение цвета при нажатии на кнопку
Добрый вечер. Приношу свои извинения, если мой вопрос не новый, просматривала много сайтов, но не нашла конкретных ответов на свои вопросы.
В наличии сайт, отрисованный в фотошопе и импортированный по слоям в флеш. Все нужное переведено в Buttons и MovieClips. Учитывая, что все кнопки уже ранее созданы графически, я так понимаю, что программно их в отдельном коде описывать не стоит, только можно прописать координаты, высоту и ширину. Нажимая на каждую кнопку главного меню (при нажатии кнопка-текст окрашиваются другим цветом с применением нужных фильтров), вызывается подменю ( появляется внизу одной строкой). При выборе пункта подменю также данная кнопка-текст окрашиваюся в иной цвет. К каждой кнопке меню и подменю в коде прописываю свои конкретные переменные, через которые при нажатии загружаются нужные xml-файлы. Вопрос: как прописать, что при нажатии кнопки (допустим, Btn_1), ее цвет меняется и применяются нужные фильтры, при нажатии другой кнопки (Btn_2), происходят те же изменения, а кнопка Btn_1 приобретает первоначальные параметры? |
|
|||||
А вы при клике по кнопке, в начале запускайте функцию, где циклом пробегайте по всем кнопкам (они в массиве должны быть), и отключайте им фильтры и цвет, а после этого назначайте изменения текущей кнопке. Что то вроде этого
//массив кнопок var buttons:Array=[b1,b2] //слушатель для каждой кнопки setListener(); function setListener(){ for(var i=0;i<buttons.length;i++){ buttons[i].addEventListener(MouseEvent.ROLL_OVER,over) } } function over(e:MouseEvent):void{ resetButtons(); var activeButton=e.target activeButton.filters=[new GlowFilter()] } //отцистка кнопок от эффектов function resetButtons(){ for(var i=0;i<buttons.length;i++){ var button=buttons[i] button.filters=[] } } |
Часовой пояс GMT +4, время: 17:58. |
|
« Предыдущая тема | Следующая тема » |
Теги |
AS3 , button |
|
|