FLEX: возможно ли использовать AreaStroke и AreaFill в CSS-файле? - PullRequest
0 голосов
/ 16 апреля 2010

Я хотел бы упростить мой код и добавить возможное в файл CSS:

<mx:AreaSeries styleName="timeArea" name="A" yField="A" areaStroke="{new Stroke(0x0033CC, 2)}" areaFill="{new SolidColor(0x0033CC, 0.5)}" />

Могу ли я переместить areaStroke и areaFill в css? Что будет в результате CSS?

спасибо

1 Ответ

0 голосов
/ 17 апреля 2010

Итак, хотя вы не можете указать штрихи в css, вы можете указать свойства штрихов, например:

<mx:Metadata>
 [Style(name="areaFillColor",format="Color",type="Number)]
 [Style(name="areaStrokeColor",format="Color",type="Number)]
</mx:Metadata>
<mx:Script>
<![CDATA[
    [Bindable]
    protected var strokeColor:Number;

    [Bindable]
    protected var fillColor:Number;

    override public function styleChanged(styleProp:String):void{
         super.styleChanged(styleProp);
         //you really ought to do this in a switch statement
         strokeColor = getStyle("areaStrokeColor");
         fillColor = getStyle("areaFillColor");
    }
]]>
</mx:Script>

<mx:AreaSeries styleName="timeArea" name="A" yField="A" areaStroke="{myStroke}" areaFill="{myFill}" />

<mx:SolidColor id="myFill" color="{fillColor}" alpha=".3"/>    
<mx:Stroke id="s1" color="{strokeColor}" weight="2"/>

И ваш CSS будет выглядеть так (где myAreaChart - это styleName, установленное на диаграмме родительской области):

.myAreaChart{
   areaFillColor: #f3f3f3;
   areaStrokeColor: #333333;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...