gpt4 book ai didi

apache-flex - Flex - 将参数发送到自定义 ItemRenderer?

转载 作者:行者123 更新时间:2023-12-03 11:17:57 25 4
gpt4 key购买 nike

我想要完成的工作是让我的 Flex Datagrid 中的财务数据进行颜色编码——如果是肯定的,则为绿色;如果是负数,则为红色。如果我想要着色的列是 dataProvider 的一部分,这将相当简单。相反,我是根据作为 dataProvider 一部分的另外两列来计算它的。这仍然相当简单,因为我可以在 ItemRenderer 中再次计算它,但计算的另一部分是基于文本框的值。所以,我认为我需要能够将 textBox 的值发送到自定义 ItemRenderer,但由于该值存储在主 MXML 应用程序中,我不知道如何访问它。将其作为参数发送似乎是最好的方法,但也许还有另一种方法。

这是我的 ItemRenderer 的当前代码:

package {
import mx.controls.Label;
import mx.controls.listClasses.*;

public class PriceLabel extends Label {
private const POSITIVE_COLOR:uint = 0x458B00 // Green
private const NEGATIVE_COLOR:uint = 0xFF0000; // Red

override protected function updateDisplayList(unscaledWidth:Number, unscaledHeight:Number):void {
super.updateDisplayList(unscaledWidth, unscaledHeight);

/* Set the font color based on the item price. */
setStyle("color", (data.AvailableFunding >= 0) ? NEGATIVE_COLOR : POSITIVE_COLOR);
}
}

(data.AvailableFunding 不存在)

那么有谁知道我将如何实现这一目标?

最佳答案

您可能想查看 ClassFactory来自 Flex API:

这允许您设置具有任意类型/值的原型(prototype)对象,每个类型/值都将传递给项目渲染器。从样本中:

var productRenderer:ClassFactory = new ClassFactory(ProductRenderer);
productRenderer.properties = { showProductImage: true };
myList.itemRenderer = productRenderer;

上面的代码假定“ProductRenderer”有一个名为“showProductImage”的公共(public)属性,该属性将设置为“true”。

关于apache-flex - Flex - 将参数发送到自定义 ItemRenderer?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/528796/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com