buttonbar 中的数据是从通过后台php连接oracle数据库中获取的
通过HTTPService方式获取的xml格式 这里先模拟一段xml
buttonBar1控件如何显示图标
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
layout="vertical"
verticalAlign="middle"
backgroundColor="white" applicationComplete="ini();">
<mx:Script>
<![CDATA[
import mx.utils.ObjectProxy;
[Bindable]
[Embed("assets/kmenuedit.png")]
public var BulletCheck:Class;
[Bindable]
private var arrbuttonbar:Array;
private var xml_buttonbar:XML=<menus>
<menu menuname="菜单管理" icon="BulletCheck"/>
<menu menuname="密码修改" icon="BulletCheck"/>
<menu menuname="操作日志" icon="BulletCheck"/>
<menu menuname="退出系统" icon="BulletCheck"/>
</menus>;
private function ini():void
{
arrbuttonbar=xmlListToObjectArray(xml_buttonbar.menu);
}
private function xmlListToObjectArray(xmlList:XMLList):Array
{
var a:Array = new Array();
for each(var xml:XML in xmlList)
{
var attributes:XMLList = xml.attributes();
var o:Object = new Object();
for each (var attribute:XML in attributes)
{
var nodeName:String = attribute.name().toString();
var value:*;
if(nodeName=="icon")
{
value = attribute as Class;
}
else
{
value = attribute.toString();
}
o[nodeName] = value;
}
a.push(o);
}
return a;
}
]]>
</mx:Script>
<mx:XML id="xml_buttonbar1" xmlns="">
<root>
<menus>
<menu menuname="菜单管理" icon="BulletCheck"/>
<menu menuname="密码修改" icon="BulletCheck"/>
<menu menuname="操作日志" icon="BulletCheck"/>
<menu menuname="退出系统" icon="BulletCheck"/>
</menus>
</root>
</mx:XML>
<mx:Array id="arr">
<mx:Object label="Accordion"
toolTip="Le Accordion"
icon="{BulletCheck}" />
<mx:Object label="ApplicationControlBar"
toolTip="Le ApplicationControlBar"
icon="@Embed('assets/kmenuedit.png')" />
<mx:Object label="Box"
toolTip="Le Box"
icon="@Embed('assets/kmenuedit.png')" />
<mx:Object label="Canvas"
toolTip="Le Canvas"
icon="@Embed('assets/kmenuedit.png')" />
<mx:Object label="ControlBar"
toolTip="Le ControlBar"
icon="@Embed('assets/kmenuedit.png')" />
</mx:Array>
<mx:ButtonBar id="buttonBar"
dataProvider="{arr}"
labelField="label"
toolTipField="toolTip"
iconField="icon"
height="32" />
<mx:ButtonBar id="buttonBar1"
dataProvider="{arrbuttonbar}"
labelField="menuname"
iconField="icon"
height="32" />
</mx:Application>
通过HTTPService方式获取的xml格式 这里先模拟一段xml
buttonBar1控件如何显示图标
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
layout="vertical"
verticalAlign="middle"
backgroundColor="white" applicationComplete="ini();">
<mx:Script>
<![CDATA[
import mx.utils.ObjectProxy;
[Bindable]
[Embed("assets/kmenuedit.png")]
public var BulletCheck:Class;
[Bindable]
private var arrbuttonbar:Array;
private var xml_buttonbar:XML=<menus>
<menu menuname="菜单管理" icon="BulletCheck"/>
<menu menuname="密码修改" icon="BulletCheck"/>
<menu menuname="操作日志" icon="BulletCheck"/>
<menu menuname="退出系统" icon="BulletCheck"/>
</menus>;
private function ini():void
{
arrbuttonbar=xmlListToObjectArray(xml_buttonbar.menu);
}
private function xmlListToObjectArray(xmlList:XMLList):Array
{
var a:Array = new Array();
for each(var xml:XML in xmlList)
{
var attributes:XMLList = xml.attributes();
var o:Object = new Object();
for each (var attribute:XML in attributes)
{
var nodeName:String = attribute.name().toString();
var value:*;
if(nodeName=="icon")
{
value = attribute as Class;
}
else
{
value = attribute.toString();
}
o[nodeName] = value;
}
a.push(o);
}
return a;
}
]]>
</mx:Script>
<mx:XML id="xml_buttonbar1" xmlns="">
<root>
<menus>
<menu menuname="菜单管理" icon="BulletCheck"/>
<menu menuname="密码修改" icon="BulletCheck"/>
<menu menuname="操作日志" icon="BulletCheck"/>
<menu menuname="退出系统" icon="BulletCheck"/>
</menus>
</root>
</mx:XML>
<mx:Array id="arr">
<mx:Object label="Accordion"
toolTip="Le Accordion"
icon="{BulletCheck}" />
<mx:Object label="ApplicationControlBar"
toolTip="Le ApplicationControlBar"
icon="@Embed('assets/kmenuedit.png')" />
<mx:Object label="Box"
toolTip="Le Box"
icon="@Embed('assets/kmenuedit.png')" />
<mx:Object label="Canvas"
toolTip="Le Canvas"
icon="@Embed('assets/kmenuedit.png')" />
<mx:Object label="ControlBar"
toolTip="Le ControlBar"
icon="@Embed('assets/kmenuedit.png')" />
</mx:Array>
<mx:ButtonBar id="buttonBar"
dataProvider="{arr}"
labelField="label"
toolTipField="toolTip"
iconField="icon"
height="32" />
<mx:ButtonBar id="buttonBar1"
dataProvider="{arrbuttonbar}"
labelField="menuname"
iconField="icon"
height="32" />
</mx:Application>