2017-02-22 5 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); 
     }  
    }  
});