Se você já tentou mudar o ícone de um botão no Adobe Flex em tempo de execução e sentiu falta da propriedade icon. Encontrei uma dica muito simples de como resolver o problema.

Veja abaixo.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<mx:Script>
<![CDATA[
 
[Embed(source="../assets/icons/funnel_add.png")]
[Bindable] private var imgFunnelAddClass:Class;
[Embed(source="../assets/icons/funnel_delete.png")]
[Bindable] private var imgFunnelDeleteClass:Class;
 
private function toggleFilter():void{
 
if (fltr.visible == false) {
// it was hidden, we show it.
btnToggleFilter.styleDeclaration.setStyle("icon",imgFunnelDeleteClass);
} else {
// it was shown we hide it.
btnToggleFilter.styleDeclaration.setStyle("icon",imgFunnelAddClass);
}
fltr.visible=!fltr.visible;
}
 
]]>
</mx:Script>