2

以下のコードを検討してください: クリック イベントを追跡できないのはなぜですか??

            package {
                import flash.display.Sprite;
            import flash.events.MouseEvent;
            import flash.display.*;
            [SWF(width="1000",height="600")]
                public class vanCopperTes extends Sprite
                {
                    public function vanCopperTes()
                    {
                        stage.align = StageAlign.TOP_LEFT;
                        stage.scaleMode = StageScaleMode.NO_SCALE;

                        //黄色矩形
                        graphics.beginFill(0xFFCC00,.5);
                        graphics.drawRect(0,0,200,200);
                        graphics.endFill();
                        addEventListener(MouseEvent.CLICK,onClick);
                        trace("this.numChilder",numChildren);// output: 0

                    }

                    private function onClick(e:MouseEvent):void
                    {
                        trace("Click");
                    }

                }
            }
4

1 に答える 1

0

イベントリスナーを次のように変更してみてください。

stage.addEventListener(MouseEvent.CLICK,onClick);

これは .swf 全体で機能します。黄色の四角だけにしたい場合は、それを別のスプライトとして追加し、それにリスナーをアタッチする必要があります。

于 2012-12-04T14:16:07.590 に答える