我无法弄清楚如何在Vaadin的OpenLayer包装器中取消选择选定的向量(点向量或其他向量)。

要启用向量选择,请使用以下方法:

VectorLayer pointLayer = new VectorLayer();
pointLayer.setSelectionMode(SelectionMode.SIMPLE);


并侦听矢量onclick事件,请使用以下方法:

pointLayer.addListener(new VectorSelectedListener() {
    @Override
    public void vectorSelected(VectorSelectedEvent event) {
        //do work
    }
});


并使用以下方法获取当前选定的向量:

Vector selectedVector = pointLayer.getSelectedVector();


但是,单击后如何取消选择所选矢量?

最佳答案

我按一个按钮来做。例如:

Button btn = new Button();
btn.addListener(new ClickListener() {
    if (selectedVector != null) {
      VectorLayer vl = (VectorLayer) selectedVector.getParent();
      vl.setSelectedVector(null);
    }
});

09-25 16:19