Чтобы отобразить всплывающее меню на JxMaps, вам необходимо выполнить следующие действия:
- Переключить JxMaps в режим LIGHTWEIGHT ().В режиме HEAVYWEIGHT всплывающее меню может отображаться под картой.
- Добавьте код, который показывает PopupMenu для «щелчка» по обработчику событий.
Пожалуйста, посмотрите наследующий пример:
JPopupMenu popup = new JPopupMenu();
popup.add(new JMenuItem("Test"));
MapView mapView = new MapView(new MapViewOptions(MapComponentType.LIGHTWEIGHT));
mapView.setOnMapReadyHandler(new MapReadyHandler() {
@Override
public void onMapReady(MapStatus status) {
final Map map = mapView.getMap();
map.setCenter(new LatLng(35.91466, 10.312499));
map.setZoom(2.0);
map.addEventListener("rightclick", new MapEvent() {
@Override
public void onEvent() {
java.awt.Point pos = MouseInfo.getPointerInfo().getLocation();
SwingUtilities.convertPointFromScreen(pos, mapView);
popup.show(mapView, pos.x, pos.y);
}
});
}
});