Я пытаюсь в первый раз использовать и понимать JTrees, TreeModels, TreeModes и т. Д. Я хочу использовать Tree для представления устройств Bluetooth вблизи моего локального устройства. Мое устройство Bluetooth является корневым узлом дерева, и любые ПЕРВЫЕ потомки из корневого узла будут устройствами Bluetooth поблизости.JTree Как изменить узел программно?
Я настроил мое дерево, чтобы начать с следующим (код укорачивается для краткости):
topTreeNode = new DefaultMutableTreeNode("Local Bluetooth Device");
treeModel = new DefaultTreeModel(topTreeNode);
jTree1 = new javax.swing.JTree(treeModel);
Когда JTree сначала отображается корневой узел считывает «Local Bluetooth Device». Однако, как только я инициализирую стек Bluetooth, я бы хотел, чтобы корневой узел отображал «дружественное имя» и адрес моего локального устройства Bluetooth.
Проблема, с которой я столкнулась, - это как изменить корень узла? Я пробовал различные методы, в том числе создание нового DefaultMutableTreeNode() для topTreeNode, но JTree не перерисовывает сразу. Должен ли я использовать слушателя?
Любые советы приветствуются.
Я думаю, что вызов getUserObject() на корневом узле должен дать вам то, с чем вы создали узел. Если его пользовательский объект и его изменяемый, вы можете установить его значение :-) Или просто setUserObject() может позволить вам изменить его в любом случае. – aishwarya
Спасибо aishwarya. Если вы опубликуете в качестве ответа, я отдам вам это. – Kerry