使用以下代码,我在鼠标悬停按钮时实现了图像更改。 但图像名称是硬编码的,在样式中指定。怎么能让它参数化?我想重用这个小实用程序与图像名称作为输入参数。 所有使用的图像(在我的情况下为14个图像)将包含在flex项目中。 我正在使用flex 3
<mx:Style>
.myCustomButton {
upSkin: Embed(source="jjyxfx.png");
overSkin:Embed(source="cwgl.png");
downSkin: Embed(source="cwgl.png");
}
</mx:Style>
<mx:Button y="0" width="105" height="107" fillAlphas="[1.0, 1.0, 1.0, 1.0]" x="0" fillColors="[#3AA2D9, #3AA2D9]" styleName="myCustomButton" useHandCursor="true" buttonMode="true"/>
答案 0 :(得分:0)
我不相信你不能参数化CSS样式;所以你必须通过ActionScript设置样式:
public function setStylesOnButton(upSkinValue:String,overSkinValue:String,downSkinStyle:String):void{
myButton.setStyle('upSkin',upSkinValue);
myButton.setStyle('overSkin',overSkinValue);
myButton.setStyle('downSkin',downSkinStyle);
}
确保您的按钮具有ID,以便您可以在ActionScript中访问它:
<mx:Button id="myButton" y="0" width="105" height="107" fillAlphas="[1.0, 1.0, 1.0, 1.0]" x="0" fillColors="[#3AA2D9, #3AA2D9]" styleName="myCustomButton" useHandCursor="true" buttonMode="true"/>