我想显示 OMPoint ( com.bbn.openmap.omGraphics.OMPoint ) 的工具提示 OMPoint 在层 (OMGraphicHandlerLayer) 中。我愿意:
layer.setToolTipTex("text");
这样,工具提示就会显示在所有图层中。你有什么建议,因为我做不到:
point.setToolTipTex("text");
因为 OMpoint 不遗传给 OMGraphicHandlerLayer
您需要将类似于以下的逻辑添加到您的层:
@Override
public String getToolTipTextFor(OMGraphic graphic)
{
Object value = graphic.getAttribute(OMGraphic.TOOLTIP);
if (value instanceof String)
{
return (String) value;
}
return null;
}
只要此方法返回您要显示的文本,使用图形属性存储工具提示是可选的。
地图需要注册一个 InfoDisplayListener 来处理地图上工具提示的显示。我使用了内置的 InformationDelegator 地图组件。这提供了许多其他 UI 元素,如果您愿意,可以将其关闭。