それぞれのチャートを使用/呼び出して、フレックス チャートのすべてのプロパティを取得する必要があります。例 フレックス エリア チャートの場合、xField、yField、および minField があります。
任意の方法で各チャートからこれらのプロパティを取得する方法はありますか?
それぞれのチャートを使用/呼び出して、フレックス チャートのすべてのプロパティを取得する必要があります。例 フレックス エリア チャートの場合、xField、yField、および minField があります。
任意の方法で各チャートからこれらのプロパティを取得する方法はありますか?
このコードは役に立つかもしれません。これは、 ChartBaseオブジェクトのすべての情報を表示するための例です。
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="vertical" minWidth="955" minHeight="600" creationComplete="init()">
<mx:Script>
<![CDATA[
import mx.charts.chartClasses.ChartBase;
public function init():void{
getInfo(new ChartBase());
}
private function getInfo(obj:Object):void{
txt1.text = describeType(obj);
var myXML:XMLList = new XMLList(describeType(obj));
var info:String = "";
for each(var node:XML in myXML.children()){
switch(node.name().toString())
{
case "variable":
{
info = info + "var - " + node.@name + "\n"; //properties
break;
}
case "accessor":
{
info = info + "accessor - " + node.@name + "\n"; //getter-setter
break;
}
case "method":
{
info = info + "method - " + node.@name + "\n"; //methods
break;
}
}
txt2.text = info;
}
}
]]>
</mx:Script>
<mx:Label text="View Information of 'ChartBase' Object"/>
<mx:HBox width="100%">
<mx:HBox width="50%">
<mx:VBox width="100%" height="100%">
<mx:Label text="All Object Information"/>
<mx:TextArea id="txt1" width="800" height="800"/>
</mx:VBox>
</mx:HBox>
<mx:HBox width="50%">
<mx:VBox width="100%" height="100%">
<mx:Label text="Properties,Accessor and Methods from this Object"/>
<mx:TextArea id="txt2" width="800" height="800"/>
</mx:VBox>
</mx:HBox>
</mx:HBox>
</mx:Application>
基本的に、このメソッドdescribeType
はオブジェクト情報を含む XML を返します。
ここで、このコードLINKを使用して SWF を実行できます。
これを行うチャート上のメソッドはありません。チャートとそのシリーズのプロパティを知りたい場合は、リフレクションを介してこれを行う必要があります。
これには、任意のオブジェクトでグローバルな describeType() メソッドを使用できます。これにより、オブジェクトのすべてのプロパティを含む XML オブジェクトが返されます。
また、describeType の上に、オブジェクトへのアクセスとイントロスペクションを容易にする API もあります: AS3Commons Reflect