JFace CheckboxTreeviewerを使用し、チェックされた要素の結果を取得するためにICheckStateListenerを追加しました。CheckboxTreeviewerは以前にリロード後にチェックされた要素を設定しました
private HashSet<Object> checkElement=new HashSet<Object>();
checkboxTreeViewer.addCheckStateListener(new ICheckStateListener() {
@Override
public void checkStateChanged(CheckStateChangedEvent event) {
String childNode=null;
String rootNode=null;
Object changed = event.getElement();
if(changed instanceof ChildFacetNodeVo){
checkElement.add(changed);
ChildFacetNodeVo childFacetNodeVo=(ChildFacetNodeVo)changed;
childNode=childFacetNodeVo.getLabelFacet();
rootNode=childFacetNodeVo.getParent();
//here to get a new result after element checked and put new result to checkboxtreeviewer
List<RootFacetNodeVo> facetNodeVos=createFacetFilter(rootNode,childNode);
if(facetNodeVos!=null){
checkboxTreeViewer.setInput(facetNodeVos);
checkboxTreeViewer.expandToLevel(3);
checkboxTreeViewer.setCheckedElements(checkElement.toArray());
}
}
}
});
を次のように コードは、私が以前にチェック要素がオフ取得べきではない新しい要素をチェックしたときに、今私は必要なものです。 CheckboxTreeviewerで新しい入力を設定すると何も表示されません。 CheckboxTreeviewerでprevouslyチェックされた要素を設定するにはどうすればいいですか? は例
p1
-----A1 - previous checked
-----A2
-----A3
-----A4
-----A5
p1
-----A6
-----A7
-----A8 - previous checked
-----A8
-----A9
p1
-----A10
-----A11
私は同じ問題を抱えています、私の多くの問題はまだ解決していません。 –