![]() |
|
||||||||||
|
|||||
|
Регистрация: Apr 2009
Сообщений: 16
|
Доброго дня, господа специалисты!
![]() Обращается к вам чайник, помогите. ![]() В сцене (в аттаче), надо чтобы при наведении мышки на кнопку появлялся мувик который лежит на сцене, (но он скрыт: ). А при уходе с кнопки - пропадал. ![]() Ну как не пойму, как правильно пишется mouseEvent. ![]() Я пишу Огромная просьба: не пинайте сильно ногами. Давно я этим не занимался.... ![]()
__________________
Молчание "ЗОЛОТО" Вот почему его часто не хватает женщинам!!! |
|
|||||
|
Регистрация: Jun 2006
Сообщений: 164
|
|
|
|||||
|
Регистрация: Apr 2009
Сообщений: 16
|
Спасибо огромное....
Работает, но только для одной кнопки, а если я этот код прописываю для 3, как у меня в сцене, то выдает ошибку, типа "Description: Duplicate function definition." Получается в одной сцене только один раз можно использовать этот код, дальше уже получается не нужный дубликат? Может попробовать варьировать: кнопки в один слой сложить; мувики с кнопками в один слои; кнопки с мувики на отдельные слои и т.д.?????? Сейчас у меня в сцене каждая кнопка и каждый мувик лежит в отдельном слое. ![]()
__________________
Молчание "ЗОЛОТО" Вот почему его часто не хватает женщинам!!! |
|
|||||
|
Регистрация: Nov 2007
Адрес: Moscow
Сообщений: 566
|
myButton.addEventListener(MouseEvent.ROLL_OVER, onOver); myButton.addEventListener(MouseEvent.ROLL_OUT, onOut); myButton2.addEventListener(MouseEvent.ROLL_OVER, onOver); myButton2.addEventListener(MouseEvent.ROLL_OUT, onOut); myButton3.addEventListener(MouseEvent.ROLL_OVER, onOver); myButton3.addEventListener(MouseEvent.ROLL_OUT, onOut); function onOver(e:Event):void{ e.target.visible = true; } function onOut(e:Event):void { e.target.visible = false; }
__________________
#flasher@irc.trg.ru:6667 |
|
|||||
|
буду краток
модератор форума
Регистрация: Sep 2003
Адрес: Ближайшее Замкадье
Сообщений: 3,110
Записей в блоге: 28
|
__________________
Отряд Котовскага |
|
|||||
|
Регистрация: Apr 2009
Сообщений: 7
|
В AS3 введен список отображения. Не правильнее использовать его?
|
|
|||||
|
Регистрация: Apr 2009
Сообщений: 16
|
Цитата:
Ведь параметр function onOver(e:Event):void{ e.target.visible = true; } function onOut(e:Event):void { e.target.visible = false; } myButton1.addEventListener(MouseEvent.ROLL_OVER, onOver); myButton1.addEventListener(MouseEvent.ROLL_OUT, onOut); function onOver(e:Event):void{ my_clip1.target.visible = true; } function onOut(e:Event):void { my_clip1.target.visible = false; } myButton2.addEventListener(MouseEvent.ROLL_OVER, onOver); myButton2.addEventListener(MouseEvent.ROLL_OUT, onOut); unction onOver(e:Event):void{ my_clip2.target.visible = true; } function onOut(e:Event):void { my_clip2.target.visible = false; } myButton3.addEventListener(MouseEvent.ROLL_OVER, onOver); myButton3.addEventListener(MouseEvent.ROLL_OUT, onOut); unction onOver(e:Event):void{ my_clip3.target.visible = true; } function onOut(e:Event):void { my_clip3.target.visible = false; } ![]() Заранее благодарю за ответ! ![]()
__________________
Молчание "ЗОЛОТО" Вот почему его часто не хватает женщинам!!! Последний раз редактировалось Bol4apa2000; 25.04.2009 в 11:10. |
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
Лучше бабблинг, MOUSE_OVER + mouseChildren и единственная подписка, а не этот мрак.
|
|
|||||
|
Регистрация: Nov 2007
Адрес: Moscow
Сообщений: 566
|
e.target — это тот экземпляр, который отослал событие. В данном случае кнопка, или что там у вас. Т.е. при при наведении мыши на любой InteractiveObject, если вы повесили на него слушателя событий 'rollOver' и 'rollOut', visible этого InteractiveObject станет тру или фолс.
Совершенно не важно в каком слое находится ваша кнопка: Кстати, только сейчас обратил внимание что у вас visible меняется, а не альфа. InteractiveObject'ы c visible = false не рассылают события. Ну а по поводу вложенности, совершенно не важно чьих родителей дети, которых нам надо убрать, например: var s1:Sprite = new Sprite(); this.addChild(s1); s1.addEventListener(MouseEvent.MOUSE_DOWN, toggleAlpha); drawMyRect(s1, 0xFF0000, 0, 0, 300, 100); var s2:Sprite = new Sprite(); drawMyRect(s2, 0x00FF00, 100, 50, 100, 50); s1.addChild(s2); var s3:Sprite = new Sprite(); drawMyRect(s3, 0x0000FF, 130, 70, 50, 20); s2.addChild(s3); function drawMyRect(target:Sprite, c:uint, x, y, w, h):void { target.graphics.lineStyle(1, 0); target.graphics.beginFill(c, 1); target.graphics.drawRect(x, y, w, h); target.graphics.endFill(); } function toggleAlpha(e:Event):void { e.target.alpha = Math.abs(e.target.alpha - 1); } Вы невнятно рассказываете, кстати. Теперь я понял что вам нужно. Вам нужно скрывать _другой_ дисплейобжект. Можно, например, наследоваться от той-же SimpleButton: package { class MySimpleButton extends SimpleButton { private var _target:DisplayObject; public function MySimpleButton(upState:DisplayObject = null, overState:DisplayObject = null, downState:DisplayObject = null, hitTestState:DisplayObject = null) { super(upState, overState, downState, hitTestState); } public function get target():DisplayObject { return this._target; } public function set target(value:DisplayObject):void { this._target = value; } } Добавлено через 14 минут Цитата:
Я принцип показывал.
__________________
#flasher@irc.trg.ru:6667 Последний раз редактировалось Obi; 25.04.2009 в 11:54. |
|
|||||
|
Регистрация: Apr 2009
Сообщений: 16
|
Всем респект и уважуха!!!!!!
Тема закрыта, т.к. все заработало!!!!!!!!!! ![]()
__________________
Молчание "ЗОЛОТО" Вот почему его часто не хватает женщинам!!! |
![]() |
![]() |
Часовой пояс GMT +4, время: 10:06. |
|
|
« Предыдущая тема | Следующая тема » |
|
|