gpt4 book ai didi

java - JTree 如何以编程方式更改节点?

转载 作者:行者123 更新时间:2023-11-30 04:55:41 25 4
gpt4 key购买 nike

我第一次尝试使用和理解 JTrees、TreeModels、TreeModes 等。我想使用树来表示本地设备附近的蓝牙设备。我的蓝牙设备是树的根节点,根节点的任何第一个后代都将是附近的蓝牙设备。

我按如下方式设置我的树(为简洁起见,缩短了代码):

topTreeNode = new DefaultMutableTreeNode("Local Bluetooth Device");
treeModel = new DefaultTreeModel(topTreeNode);
jTree1 = new javax.swing.JTree(treeModel);

当 JTree 最初显示时,根节点读取“本地蓝牙设备”。然而,一旦我初始化蓝牙堆栈,我希望根节点显示我的本地蓝牙设备的“友好名称”和地址。

我遇到的问题是如何更改根节点?我尝试了多种方法,包括为 topTreeNode 创建一个新的 DefaultMutableTreeNode() ,但 JTree 不会立即重新绘制。我应该实现一个监听器吗?

最佳答案

根据要求,将此作为答案发布:

我认为在根节点上调用 getUserObject() 应该可以获得创建节点的内容。如果它是一个自定义对象并且是可变的,那么您可以设置它的值:-) 或者只是 setUserObject() 可以允许您更改它。

关于java - JTree 如何以编程方式更改节点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8637830/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com