我有一个运行时生成的bitmapdata,并希望在我的flex Skin类中为它应用scaleninegrid。我做了类似这样的事情:
<fx:Script>
<![CDATA[
import mx.events.FlexEvent;
[Embed(source="progressBarTrack.png")]
private var host:Class;
[Bindable]
private var texture:BitmapData
protected function skin1_preinitializeHandler(event:FlexEvent):void
{
//here is just an example,my bitmapdata will be retrieved by an other way.
texture = Bitmap(new host()).bitmapData;
}
]]>
</fx:Script>
<s:Graphic scaleGridBottom="11" scaleGridLeft="14" scaleGridRight="40" scaleGridTop="10">
<s:Rect width="300" height="22">
<s:fill>
<s:BitmapFill source="{texture}"/>
</s:fill>
</s:Rect>
</s:Graphic>
然而,无论我设置宽度和高度,它都无法工作。我也尝试嵌入源图像,它工作,但由于bitmapdata是运行时生成的,我无法像@embed那样设置scalenine。 ....,scaleGridLeft .....
反正是否允许我这样做或者我做错了什么?我想在进入源代码之前得到一些提示,并制作我自己的支持它的图形元素。
非常感谢!!!