【问题标题】:Tooltip on advanced datagrid column in FlexFlex 中高级数据网格列的工具提示
【发布时间】:2012-01-10 16:27:51
【问题描述】:

我有一个高级数据网格,其中包含状态、启用、所有者、名称等列。

我将获取状态数据为 'applicable' 或 'success' 或 'failure' 。 当状态为“适用”时,我必须在将鼠标移到那里时显示工具提示。你能帮我看看怎么做吗?

【问题讨论】:

    标签: actionscript-3 apache-flex flex4 flex3


    【解决方案1】:

    如果您的工具提示在您的 xml 数据中,您可以在 DataGridColumn 上指定 dataTipField

    例如:

    var col:DataGridColumn = new DataGridColumn();
    col.dataTipField = "@statusTooltip";
    col.showDataTips = true;
    

    如果您的 xml 项目看起来像:

    <item id="..." status="applicable" statusTooltip="My tootlip text"/>
    

    【讨论】:

      【解决方案2】:

      如果不需要TooTip Manager,那么您可以使用dataTip 函数来构造消息并将列的displayToolTip 属性设置为true

      【讨论】:

        【解决方案3】:

        您需要创建一个 GridItemRenderer,这里有一些示例代码可以放在您的自定义 GridItemRenderer 的脚本块中:

        import mx.controls.ToolTip;
        import mx.core.IUIComponent;
        import mx.managers.ToolTipManager;
        
        public var applicableToolTip:ToolTip;
        
        private function createToolTip(event:Event):void {
            if (data["status"] == "applicable") {
                var stagePoint:Point = event.target.localToGlobal(new Point(event.target.x, event.target.y));
                applicableToolTip = ToolTipManager.createToolTip(
                    "Your applicable message here",
                    stagePoint.x,
                    stagePoint.y,
                    null,
                    IUIComponent(event.currentTarget)
                ) as ToolTip;
            }
        }
        
        private function destroyToolTip(event : Event) : void {
            if (applicableToolTip != null)
                ToolTipManager.destroyToolTip(applicableToolTip);
        }
        

        然后在渲染器的标签字段中添加属性rollOver="createToolTip(event)"rollOut="destroyToolTip(event)"

        【讨论】:

        • !Mat:- 当状态不是“适用”时,appliableToolTip 会抛出空对象引用错误。
        • 这是有道理的,因为永远不会为其他状态类型创建工具提示。只需要在销毁工具提示中检查它。我已经更新了示例。
        猜你喜欢
        • 2010-12-24
        • 2010-12-23
        • 2013-09-02
        • 2011-11-21
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多