0

Flex でのグラフィック コーディングに慣れるために、Flex で簡単な描画ツールを使い始めました。はじめに問題が発生しました。

ここでは、Canvas の代わりに Border Container を描画領域 (Flex 4) として使用し、Mousemove イベントで単純なドットを描画しています。うん、とてもシンプルな基本的なこと。しかし、境界コンテナー領域に描画されたドットが表示されません。しかし、Mouse Event が発生しているのがわかります。何が欠けているのかわかりません。

以下は私のコードです、

<?xml version="1.0" encoding="utf-8"?>

<fx:Script>
    <![CDATA[
        import mx.containers.Canvas;
        import mx.skins.Border;

        import spark.components.BorderContainer;

        protected function init():void
        {
            var whiteboard:BorderContainer = new BorderContainer();
            whiteboard.width = 1000;
            whiteboard.height = 600;                
            whiteboard.addEventListener
                  (MouseEvent.MOUSE_MOVE,whiteboard_mouseMoveHandler);
            this.addElement(whiteboard);

        }

        protected function  whiteboard_mouseMoveHandler(event:MouseEvent):void
        {               

            var graph:Graphics =
                          (event.currentTarget as BorderContainer).graphics;                    
            graph.beginFill(0x000000);
            graph.drawCircle(event.localX,event.localY,3);
            trace("x:"+event.localX+":y:"+event.localY);                
        }

    ]]>
</fx:Script>

4

2 に答える 2

0

は、そのBorderContainerグラフィックス オブジェクトに描画することを期待していない可能性が最も高いです。最近はコードを見ていませんが、BorderContainer他の誰かが同様の問題を抱えていることを思い出します。

aはコンテンツの周囲に境界線を描画するため、オブジェクトをBorderContainer使用してその境界線を描画する可能性が最も高くなります。したがって、境界コンテナーgraphicsのプロパティを使用して描画しようとしないでください。graphics

UIComponent代わりに、またはその他の Flex オブジェクトを境界コンテナーに追加してから、そのオブジェクトにグラフィックを描画します。

于 2012-12-26T22:33:40.830 に答える