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

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

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

Регистрация: Feb 2001
Сообщений: 33
По умолчанию показать OVER кадр SimpleButton-a из as3

Есть кнопка SimpleButton. Какой код нужно выполнить чтобы она показала свой стейт "OVER" и возможно ли это вообще ? Мувик использовать не могу по ряду причин.

Старый 17.10.2010, 20:50
gr_crd вне форума Посмотреть профиль Отправить личное сообщение для gr_crd Посетить домашнюю страницу gr_crd Найти все сообщения от gr_crd
  № 2  
Ответить с цитированием
gr_crd
 
Аватар для gr_crd

Регистрация: Mar 2009
Адрес: Kazakhstan, Almaty
Сообщений: 121
Код AS3:
var btn:SimpleButton=new SimpleButton(a,b,c,d);
когда создаем кнопку, передаем в конструктор DisplayObject'ы

Далее, наводим на кнопку мышью, состояние OVER отображается автоматически, однако если
Код AS3:
btn.enabled=false;
btn.mouseEnabled=false;
то состояние OVER не отображается. Проверьте эти значения, может в них проблема.
__________________
заткнись и делай

Старый 17.10.2010, 21:02
Troglodit вне форума Посмотреть профиль Отправить личное сообщение для Troglodit Найти все сообщения от Troglodit
  № 3  
Ответить с цитированием
Troglodit

Регистрация: Feb 2001
Сообщений: 33
Я плохо объяснил, сори. Мышью я могу запросто увидеть OVER. Мне нужно чтобы кнопка показала OVER когда мышь не над ней, из кода.

Старый 17.10.2010, 21:18
КорДум вне форума Посмотреть профиль Отправить личное сообщение для КорДум Найти все сообщения от КорДум
  № 4  
Ответить с цитированием
КорДум
 
Аватар для КорДум

блогер
Регистрация: Jan 2008
Адрес: syktyvkar
Сообщений: 3,803
Записей в блоге: 10
Да напишите свою кнопку, это же дел минуты на три, сделайте ее такой, какой вам ее хочется видеть. Метод viewOverState сделайте у нее.
__________________
тут я

Старый 17.10.2010, 21:19
gr_crd вне форума Посмотреть профиль Отправить личное сообщение для gr_crd Посетить домашнюю страницу gr_crd Найти все сообщения от gr_crd
  № 5  
Ответить с цитированием
gr_crd
 
Аватар для gr_crd

Регистрация: Mar 2009
Адрес: Kazakhstan, Almaty
Сообщений: 121
интересно, вполне возможно, что это нереально, даже
Код AS3:
btn.overState=visible;
не дает эффекта.
Оно и понятно, видимость соответствующих состояний регулируется внутри класса SimpleButton.

Однако, есть следующая идея.
Можно менять состояния местами.
Например, когда нам нужно чтобы состояние кнопки было OVER, даже если мышь не наведена на нее -> соответственно, текущее видимое состояние кнопки - upState. и просто подставляем на upState тот DisplayObject, который у нас на overState.

Код AS3:
btn.upState=btn.overState
Добавлено через 55 секунд
Да, и вправду, почему нельзя использовать свою кнопку? Что за ряд причин?
__________________
заткнись и делай

Старый 17.10.2010, 22:41
kackbip вне форума Посмотреть профиль Отправить личное сообщение для kackbip Найти все сообщения от kackbip
  № 6  
Ответить с цитированием
kackbip
 
Аватар для kackbip

Регистрация: Sep 2007
Адрес: Tomsk
Сообщений: 943
Отправить сообщение для kackbip с помощью ICQ Отправить сообщение для kackbip с помощью Skype™
Не умею, не хочу, мама не разрешает.
Автор, простите - я не со зла.
С одной стороны - зачем писать что-то свое когда есть уже написанное?
Но с другой - а почему бы и нет

Старый 17.10.2010, 22:48
КорДум вне форума Посмотреть профиль Отправить личное сообщение для КорДум Найти все сообщения от КорДум
  № 7  
Ответить с цитированием
КорДум
 
Аватар для КорДум

блогер
Регистрация: Jan 2008
Адрес: syktyvkar
Сообщений: 3,803
Записей в блоге: 10
Банально - это хорошая практика, плюс вряд ли есть такая кнопка, которая бы устраивала абсолютно всех и не была бы перегружена наворотами.
__________________
тут я

Старый 17.10.2010, 23:00
gr_crd вне форума Посмотреть профиль Отправить личное сообщение для gr_crd Посетить домашнюю страницу gr_crd Найти все сообщения от gr_crd
  № 8  
Ответить с цитированием
gr_crd
 
Аватар для gr_crd

Регистрация: Mar 2009
Адрес: Kazakhstan, Almaty
Сообщений: 121
Цитата:
С одной стороны - зачем писать что-то свое когда есть уже написанное?
SimpleButton - само название сообщает, что она очень проста)
Допустим, нужно, чтобы при наведении на кнопку запускалась твин-анимация, при движении мышки по кнопке был красивый след из светящихся пикселей, при этом кнопка поворачивалась на 3 градуса в рандомную сторону, а также при событии MOUSE_OUT, меняла значение статич. переменной в каком-нибудь классе.. ладно, если такая кнопка одна.. а если пользователь хочет создавать в папке с swf-кой XML-файл, и чтобы флешка отображала столько кнопок, сколько описано в файле да еще и заданным цветом? Вот тут уже без своего уникального класса не обойтись. (ну можно конечно, но это будет неудобно) Это все к вопросу о том, зачем писать свое...
__________________
заткнись и делай

Старый 18.10.2010, 01:15
expl вне форума Посмотреть профиль Отправить личное сообщение для expl Найти все сообщения от expl
  № 9  
Ответить с цитированием
expl

блогер
Регистрация: Feb 2006
Сообщений: 1,474
Записей в блоге: 3
Впринципе свою кнопку можно слепить и на базе SimpleButton - всетки там уже реализована реакция на мышь, нужно только:
- дополнить недостающие состояния и применять их присваиванием upStae, downState и т.д.
- сделать принудительную установку состояния upState == overState (c запоминанием upState конечно, чтобы его вернуть)

Чем-то будет проще кнопки на базе Sprite, чем-то сложнее
В нашем проекте щас и те и те используются - не скажу что лучше

Старый 18.10.2010, 16:24
Troglodit вне форума Посмотреть профиль Отправить личное сообщение для Troglodit Найти все сообщения от Troglodit
  № 10  
Ответить с цитированием
Troglodit

Регистрация: Feb 2001
Сообщений: 33
Раскрываю ряд причин - есть оболочка для игрушек, включающая кучу окон с кнопками, в которой реализованы все менюшки нужные для флеш игры кроме самой игры. Для каждой новой игры просто рисуется скин в виде swc-шки, которая подставляется в проект и новый скин готов.

На этой оболочке уже сделано 3 игры и сейчас заканчивается 4-я. Проблема в том что эта игра стилизирована под ретро игры, в ней реализована пикселизация 1:3. Тоесть реальный клип маленький но рендерится в битмапку которая растягивается в 3 раза, создавая эфект пикселов. Эта разтягучка крепится поверх скинированой оболочки.

Таким образом необходимо будет сделать свой менеджер мыши который будет получать координаты "большие" и уменьшать их в 3 раза, а затем самому диспатчить на все что находится под уменьшеной мышью. Это не проблема. Единственная заморочка в том что в скине прописана куча кнопок, которые переделывать в мувики не улыбается, так как система идеально отлажена на 3-х предыдущих проектах. И кнопки эти нужно будет руками заставлять показывать "овер" в модуле растягивания

А вот за это спасибо, похоже что это может сработать
btn.upState=btn.overState


Последний раз редактировалось Troglodit; 18.10.2010 в 18:46.
Создать новую тему Ответ Часовой пояс GMT +4, время: 17:51.
Быстрый переход
  « Предыдущая тема | Следующая тема »  
Опции темы
Опции просмотра

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

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


 


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


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