复选框节点树

时间:2012-01-23 04:02:23

标签: java swing jtree jcheckbox

我一直在尝试构建一个复选框节点树。

我的规格是我需要父节点也是一个复选框而不是像icon这样的文件夹。

我已经意识到默认复选框节点树将是父节点的文件夹图标,并且是叶节点的复选框。

关于我如何实现它的任何建议?

1 个答案:

答案 0 :(得分:2)

您好我认为您需要像followng图像,其中节点还包含复选框

你可以按照以下方式实现:

 String[] strs = {"swing",     // 0
     "platf",     // 1
     "basic",     // 2
     "metal",     // 3
     "JTree"};    // 4

CheckNode[] nodes = new CheckNode[strs.length];
for (int i=0;i<strs.length;i++) {
  nodes[i] = new CheckNode(strs[i]); 
}
nodes[0].add(nodes[1]);
nodes[1].add(nodes[2]);
nodes[1].add(nodes[3]);
nodes[0].add(nodes[4]);
nodes[3].setSelected(true);
JTree tree = new JTree( nodes[0] );
tree.setCellRenderer(new CheckRenderer());
tree.getSelectionModel().setSelectionMode(
  TreeSelectionModel.SINGLE_TREE_SELECTION
);

refer full example