1

我想在 flex 中设置按钮的图标。

默认语法如下。

myButton.setStyle("icon", iconClass);

iconClass 通常是一个嵌入式对象。

但我想做的是,使用标准Sprite 或 MovieClip(我在运行时找到)作为图标。

这可能吗?有人做过吗?

谢谢!

4

2 回答 2

2

这实际上是 Flex 框架在样式方面的一个致命缺陷。当 Flex 获取图标的样式值时,它假定它是类型的Class,并且实例化的对象将是类型的DisplayObject(或派生的)。mx:Image测试样式的值是否属于类型DisplayObject,如果是,则跳过它当前执行的构造步骤,这是对代码(哪些类喜欢为其源属性所做的)的一个微不足道的更改。

如果您不想更改 Flex 框架源,Ben 的解决方案是最好的解决方案。就个人而言,我最终会对特定组件进行猴子修补以接受实例化DisplayObjects而不是Classes.某些组件比其他组件更痛苦。

Doug McCune 解释如何对 Flex 框架进行猴子补丁。

于 2009-04-10T16:02:32.987 回答
-1

找到了可能的解决方案。http://blog.benstucki.net/?p=42之前会给出这个并报告。

于 2009-03-15T16:01:35.167 回答