0

アルファ塗りつぶしの長方形の作成に問題があります。UIComponentは、塗りつぶされた長方形の「アルファ」を許可せず、100%アルファ(alpha = 1)に変換するようです。flexのUIComponentでアルファで塗りつぶされた長方形を作成するにはどうすればよいですか?

var uic:UIComponent = new UIComponent(); 


var mc:MovieClip = new MovieClip(); 

mc.graphics.beginFill(0xffcc33,0.2) // <<<<<<NOTICE THE ALPHA FILL
mc.graphics.lineStyle( 1,0xffcc33);
mc.graphics.drawRect(0,0,100,100);
mc.graphics.endFill();
uic.addChild(mc);

addElement(uic);

PS:さらに、UIComponentにムービークリップを追加すると、「グロー」などのフィルター効果も機能しません。

4

1 に答える 1

1

このコードを使用して、「アルファ」塗りつぶしの長方形を作成できます

<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
               xmlns:s="library://ns.adobe.com/flex/spark"
               minWidth="955"
               minHeight="600">

    <fx:Script>
        <![CDATA[
        import mx.graphics.SolidColor;
        import mx.graphics.SolidColorStroke;

        import spark.primitives.Rect;

        public function makeRect():void {
            var rect:Rect = new Rect();
            rect.width = 100;
            rect.height = 100;

            rect.fill = new SolidColor(0xffcc33, 0.2);
            rect.stroke = new SolidColorStroke(0xffcc33, 1);

            addElement(rect);
        };
    ]]>
    </fx:Script>

    <s:Button click="makeRect()"/>

</s:Application>
于 2012-10-04T09:50:26.667 に答える