flex3 改变buttonbar中某个button的背景色

类似的功能 就是选中某个button就改变皮肤 最好能有代码 谢谢
2025-04-23 14:34:42
推荐回答(1个)
回答1:


creationComplete="init()" backgroundColor="white"
layout="absolute">

import mx.controls.Alert;
import mx.controls.Button;
private function init():void{
for(var i:int=1;i<=12;i++){
var btn:Button = new Button();
btn.label = i+"月份";
btn.id=i+"";
btn.setStyle("fillColors",["gray","gray"]);
btn.setStyle("fillAlphas",[1.0, 1.0, 1.0, 1.0]);
btn.setStyle("color","black");
btn.setStyle("cornerRadius",0);
btn.addEventListener(MouseEvent.CLICK,showStyle);
btnBar.addChild(btn);
}
}
private function showStyle(event:MouseEvent):void{
var btn:Button = event.target as Button;
if(btn.id.toString().indexOf("a")==-1){
btn.setStyle("fillColors",["white","white"]);
btn.setStyle("fillAlphas",[1.0,1.0,1.0,1.0]);
btn.setStyle("color","black");
btn.id +="a";
}else{
btn.setStyle("fillColors",["gray","gray"]);
btn.setStyle("fillAlphas",[1.0, 1.0, 1.0, 1.0]);
btn.setStyle("color","black");
btn.setStyle("cornerRadius",0);
btn.id = btn.id.substring(0,btn.id.length-1);
}
}
]]>





闲着没事.帮你写了个完整的例子....