0

我想显示 OMPoint ( com.bbn.openmap.omGraphics.OMPoint ) 的工具提示 OMPoint 在层 (OMGraphicHandlerLayer) 中。我愿意:

layer.setToolTipTex("text");

这样,工具提示就会显示在所有图层中。你有什么建议,因为我做不到:

point.setToolTipTex("text");

因为 OMpoint 不遗传给 OMGraphicHandlerLayer

4

1 回答 1

0

您需要将类似于以下的逻辑添加到您的层:

@Override
public String getToolTipTextFor(OMGraphic graphic)
{
    Object value = graphic.getAttribute(OMGraphic.TOOLTIP);
    if (value instanceof String)
    {
        return (String) value;
    }
    return null;
}

只要此方法返回您要显示的文本,使用图形属性存储工具提示是可选的。

地图需要注册一个 InfoDisplayListener 来处理地图上工具提示的显示。我使用了内置的 InformationDelegator 地图组件。这提供了许多其他 UI 元素,如果您愿意,可以将其关闭。

于 2016-10-18T05:02:23.960 回答