在火花ButtonBar flex 4中的每个按钮左侧放置图标

时间:2012-02-08 17:12:03

标签: flex4 buttonbar

你好,我有以下几点:

<s:ButtonBar id="tabs" y="15" left="0" height="31"
             change="VideosMenuBar_changeHandler(event)" requireSelection="true">  
    <s:layout>
        <s:HorizontalLayout gap="1" columnWidth="180" variableColumnWidth="false"   
                            />
    </s:layout>

    <s:ArrayCollection>
        <fx:String>Latest Videos</fx:String>
        <fx:String>Last Week Videos</fx:String>
        <fx:String>Last Month Videos</fx:String>
    </s:ArrayCollection>

</s:ButtonBar>

任何人都可以告诉我如何在这个(火花)ButtonBar的每个按钮的左边嵌入一个图标?我搜索了所有的网页!

事先谢谢!

1 个答案:

答案 0 :(得分:2)

ButtonBar创建一个皮肤类(例如CustomButtonBarSkin

<s:ButtonBar id="tabs" y="15" left="0" height="31"
             skinClass="CustomButtonBarSkin"    
             change="VideosMenuBar_changeHandler(event)" requireSelection="true">  
    <s:layout>
        <s:HorizontalLayout gap="1" columnWidth="180" variableColumnWidth="false"   
                            />
    </s:layout>

    <s:ArrayCollection>
        <fx:String>Latest Videos</fx:String>
        <fx:String>Last Week Videos</fx:String>
        <fx:String>Last Month Videos</fx:String>
    </s:ArrayCollection>

</s:ButtonBar>

在外观类中查找将按钮定义为组件的部分,并将skinClass的{​​{1}}属性更改为自定义外观类(例如ButtonBarButton

CustomButtonBarButtonSkin

自定义<fx:Component id="firstButton"> <!-- <s:ButtonBarButton skinClass="spark.skins.spark.ButtonBarFirstButtonSkin" /> --> <s:ButtonBarButton skinClass="CustomButtonBarButtonSkin" /> </fx:Component> [...] 皮肤类基于ButtonBarspark.skins.spark.ButtonBarFirstButtonSkinspark.skins.spark.ButtonBarMiddleButtonSkin

在自定义spark.skins.spark.ButtonBarLastButtonSkin外观类中,您可以根据需要添加组件。在他离开的图像的情况下,该类看起来像这样。

ButtonBarButton

And this it how it looks