我有一个高级数据网格,其中列为status,enabled,owner,name。
我将获取状态数据为“适用”或“成功”或“失败”。 当状态变为“适用”时,我必须在将鼠标移到那里时显示工具提示。你能帮我解决一下怎么做吗?
答案 0 :(得分: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)"
答案 1 :(得分:1)
如果不需要TooTip Manager
,那么您可以使用dataTip
函数构建邮件,并将列的displayToolTip
属性设置为true
。
答案 2 :(得分:1)
如果您的工具提示位于xml数据中,则可以在dataTipField
上指定DataGridColumn
。
例如:
var col:DataGridColumn = new DataGridColumn();
col.dataTipField = "@statusTooltip";
col.showDataTips = true;
如果你的xml项看起来像:
<item id="..." status="applicable" statusTooltip="My tootlip text"/>