【问题标题】:Flex dataGrid itemRenderer, access cell width and heightFlex dataGrid itemRenderer,访问单元格宽高
【发布时间】:2008-11-13 16:23:53
【问题描述】:

在编写自定义 itemRenderer 时,如何引用将在其中渲染的网格单元格的高度和宽度?这样在调整网格大小时它会正确调整大小。

我正在编写一个 dataGrid itemRenderer,它在表格的最后一列中绘制条形图。

我尝试过引用“this”、“this.parent”和其他一些内容,但均未成功。 我的临时 hack 解决方案是将此数据添加到数据集合中,但是当网格更改大小时这将不起作用,因此我每次都必须对其进行编辑。

【问题讨论】:

    标签: apache-flex actionscript datagrid itemrenderer


    【解决方案1】:

    包括单元格渲染器在内的所有 flex 组件都知道它们自己的宽度和高度,因此您应该能够访问 this.width 和 this.height

    如果您正在寻找能够告诉您何时调整单元格大小的事件,您可以收听 ResizeEvent.RESIZE 事件或覆盖 protected function updateDisplayList(unscaledWidth:Number, unscaledHeight:Number):void 在组件上。

    【讨论】:

    • 我试过了,但 this.width 始终为 0。我怀疑这是它尚未渲染的结果,因为它是一个(大概)100% 宽度的 HBox。跨度>
    • 非常感谢,肖恩。我从来没有想过要覆盖 updateDisplayList。 +1
    【解决方案2】:

    最后一列的 itemRenderer 继承了布局的大小。为 MXML itemRenderer 使用绝对布局,它会缩放以适应。

    【讨论】:

      猜你喜欢
      • 2012-05-29
      • 1970-01-01
      • 2012-01-21
      • 1970-01-01
      • 2011-09-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多