![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
|
|||||
|
Регистрация: Apr 2010
Адрес: Москва Кузминки
Сообщений: 109
|
Доброго вам, уважаемые flash-самураи.
Вот очередной тупой вопрос про мышиные слушатели и дисплей лист. Есть задача ловить мышиные события двух клипов друг под другом. А точнее так: 0 - stage 0.1 - bottom (MouseDown) 0.2 - top 0.2.1 - topChild (MouseDown) Клипы bottom и top одинакового размера, но top не интерактивный, однако блокирует события bottom. Клип topChild интерактивный, и только его события срабатывают. Как можно заставить эту схему работать? Пузыри, видимо тут не помогут, потому что у клипов разные родители. import flash.display.Sprite; import flash.display.Graphics; import flash.events.MouseEvent; var bottom:Sprite = new Sprite() addChild(bottom); draw(bottom,0xFF0000,1); var top:Sprite = new Sprite(); addChild(top); draw(top,0x00FF00,0.5); var topChild:Sprite = new Sprite(); top.addChild(topChild); draw(topChild,0x0000FF,1,true); bottom.addEventListener(MouseEvent.MOUSE_DOWN, function (event:MouseEvent){trace('bottoom')}); topChild.addEventListener(MouseEvent.MOUSE_DOWN, function (event:MouseEvent){trace('topChild')}); function draw(sprite:Sprite,color:uint,alpha:Number,small:Boolean = false) { sprite.x = sprite.y = small ? 25 : 50; var size:Number = small ? 50 : 100; var graph:Graphics = sprite.graphics; graph.beginFill(color,alpha); graph.drawRect(0,0,size,size); graph.endFill(); } |
![]() |
Часовой пояс GMT +4, время: 03:37. |
|
|
« Предыдущая тема | Следующая тема » |
|
|