Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 29.01.2012, 11:53
Fintch вне форума Посмотреть профиль Отправить личное сообщение для Fintch Найти все сообщения от Fintch
  № 1  
Ответить с цитированием
Fintch
 
Аватар для Fintch

Регистрация: Mar 2009
Сообщений: 51
Question Изменение состояния SimpleButton программно?

Всем доброе утро, недавно писал небольшой класс для составной кнопки и попал в одну неприятную ситуацию..

Есть кнопка стандартного класса SimpleButton. В ней настроенны 2 слоя - Up, Over. Для простоты, слой up - обычный вид кнопки, а слой over - кнопка + подсветка.

При нажатии на кнопку я удаляю её со сцены и заменяю экземпляром унаследованным от Sprite. Затем при обработке другого события я возвращаю эту кнопку на сцену и о чудо! Кнопка все еще в состоянии Over, т.е. с подсветкой.

Мне конечно нужно обычное состояние - Up.

Как можно перевести кнопку в состояние Up программно? Я пробовал примерно так:
Код AS3:
myButton.dispatchEvent(new MouseEvent(MouseEvent.MOUSE_UP));
Ничего не вышло.

Подскажите кто знает..


Последний раз редактировалось Fintch; 29.01.2012 в 12:03.
Старый 29.01.2012, 12:51
silin вне форума Посмотреть профиль Посетить домашнюю страницу silin Найти все сообщения от silin
  № 2  
Ответить с цитированием
silin
 
Аватар для silin

блогер
Регистрация: Mar 2003
Адрес: Моск. обл.
Сообщений: 5,269
Записей в блоге: 6
вот такой выверт с 'передергиванием' фокуса может помочь
Код AS3:
var currFocus:InteractiveObject = stage.focus;
stage.focus = but;//but - кнопка, которую надо вернуть в upState
stage.focus = currFocus;

Старый 29.01.2012, 13:11
Fintch вне форума Посмотреть профиль Отправить личное сообщение для Fintch Найти все сообщения от Fintch
  № 3  
Ответить с цитированием
Fintch
 
Аватар для Fintch

Регистрация: Mar 2009
Сообщений: 51
Интересно. У меня мало опыта, и может я чего-то не знаю..

Но, как грамотно использовать stage в классе кнопки? У меня есть доступ к stage только из Main, а дальше я его не передаю.. Экземпляр кнопки далеко не в Main.

Старый 29.01.2012, 13:25
silin вне форума Посмотреть профиль Посетить домашнюю страницу silin Найти все сообщения от silin
  № 4  
Ответить с цитированием
silin
 
Аватар для silin

блогер
Регистрация: Mar 2003
Адрес: Моск. обл.
Сообщений: 5,269
Записей в блоге: 6
stage есть у всех дисплейОбжектов, если они 'добавлены на сцену'
когда кнопка возвращается на сцену (а трабл надо понимать именно в этой ситуации проявляется) у нее будет stage, т.е. все это можно на Event.ADDED_TO_STAGE и повесить

Добавлено через 1 минуту
вот нашел, аналогичная тема http://flasher.ru/forum/showthread.p...EE%EA%F3%F1%E0
там примерчик есть

Старый 29.01.2012, 13:36
Fintch вне форума Посмотреть профиль Отправить личное сообщение для Fintch Найти все сообщения от Fintch
  № 5  
Ответить с цитированием
Fintch
 
Аватар для Fintch

Регистрация: Mar 2009
Сообщений: 51
Спасибо большое за помощь @silin!

Создать новую тему Ответ Часовой пояс GMT +4, время: 20:26.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Теги
SimpleButton , state Over , state Up

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


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


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