2017-02-22 32 views

ответ

0

я не мог найти решение для замены флажков с радио-кнопок. Итак, я решил попробовать другой подход, и он работает для меня. Я улавливаю событие изменения свойств LayerTree и перезапускал выбранные узлы, кроме вновь выбранного.

LayerTree layerTree = new LayerTree(); 
layerTree.addPropertyChangeListener(new PropertyChangeListener(){ 
    @Override 
    public void propertyChange(PropertyChangeEvent evt) { 
     for (Iterator<TreeNode> treeNode = layerTree.getModel().getRoot().getChildren().iterator(); treeNode.hasNext();) { 
       LayerTreeNode layerTreeNode = LayerTreeNode.class.cast(treeNode.next()); 
       if(evt.getSource() instanceof LayerTreeNode && evt.getSource() != layerTreeNode) 
       layerTreeNode.setSelected(false); 
     }  
    }  
});