Дерево узлов CheckBox

У меня есть дерево узлов флажка, использующее java Swing. Моя цель состоит в том, чтобы выбрать все узлы флажка одним нажатием кнопки.

i.e

Псевдокод:

on(button click){    
    Check all the check box nodes 
}

Код :

for (CheckBoxNode node_r : checkBoxRows)
{
    node_r.setSelected(true);
    frame.repaint();
}

checkBoxRows — это список, содержащий все родительские узлы в дереве узлов флажка.

Можете ли вы указать мне правильный способ сделать это?


person Achilles    schedule 09.01.2012    source источник
comment
Чтобы быстрее получить помощь, опубликуйте SSCCE.   -  person Andrew Thompson    schedule 09.01.2012


Ответы (1)


checkBoxRows is a list containing all the parent nodes

1) в этом нет необходимости, потому что JTree реализует собственный TreeModel, только если есть лишний Controler, тогда вам нужно реализовать Vector<Object>, потому что TreeModel по умолчанию является двухмерным, а List имеет только одно измерение.

2) вы можете выполнять простые циклы внутри TreeModel с проверкой JCheckBox и если возвращает true/false из метода isSelected

3) примеры для JTree, TreeModel, JTree Renderer

person mKorbel    schedule 09.01.2012