我有一个带有可变长度标签文字的按钮。我有一个用户设置,可以打开或关闭此按钮上的标签文本。
我该如何实现?
注意:按钮的背景颜色为渐变颜色。
我尝试使用BlendMode.LAYER,没有运气;
我尝试使用Button.resizeHandler
private function resizeHandler(event:ResizeEvent):void
{
if (event.oldWidth > this.width)
this.width = event.oldWidth;
if (event.oldHeight > this.height)
this.height = event.oldHeight;
}
但只有在初始UserSetting值为true时才有效。
嵌入字体怎么样?我不知道如何将它应用于按钮
答案 0 :(得分:1)
您可以使用属性minWidth和maxWidth。 minWidth指定按钮应具有的最小宽度。和maxWidth指定按钮可以具有的最大宽度。
答案 1 :(得分:0)
如果只设置按钮的宽度会发生什么?这样,无论你设置什么标签,它都应该是一个恒定的宽度。
很可能在updateDisplayList方法中计算宽度。因此,调整大小处理程序中的代码可能会在下一个渲染事件中重置。
答案 2 :(得分:0)
您可以扩展mx.controls.Button以添加显示/隐藏标签功能。文本字段是受保护的属性,因此您只需在函数中设置可见性开/关即可。让Flex自己正确测量一切。
如果要在文本打开或关闭时增大/缩小按钮,还可以设置按钮宽度。您必须根据文本字段宽度计算宽度。