Java 如何在JTree结构更改时突出显示选定节点
我构建了一个动态添加和删除节点的JTree。我有两个按钮,允许所选节点上下移动。该函数工作正常,但一旦向上移动一级,则该节点的选择将消失。我希望用户多次单击该按钮,以使节点到达他希望的位置。因此,请让我知道如何设置节点选择 下面是我的代码Java 如何在JTree结构更改时突出显示选定节点,java,swing,jtree,Java,Swing,Jtree,我构建了一个动态添加和删除节点的JTree。我有两个按钮,允许所选节点上下移动。该函数工作正常,但一旦向上移动一级,则该节点的选择将消失。我希望用户多次单击该按钮,以使节点到达他希望的位置。因此,请让我知道如何设置节点选择 下面是我的代码 public void moveTestCaseUp() { DefaultMutableTreeNode selectedNode = (DefaultMutableTreeNode) getTcBuilderTre
public void moveTestCaseUp() {
DefaultMutableTreeNode selectedNode =
(DefaultMutableTreeNode) getTcBuilderTree().getLastSelectedPathComponent();
if (selectedNode != null) {
DefaultMutableTreeNode parentNode =
(DefaultMutableTreeNode) selectedNode.getParent();
if (parentNode != null) {
int selectedNodeIndex = selectedNode.getParent().getIndex(selectedNode);
if (selectedNodeIndex > 0) {
DefaultTreeModel treeModel =
(DefaultTreeModel) getTcBuilderTree().getModel();
treeModel.removeNodeFromParent(selectedNode);
treeModel.insertNodeInto(selectedNode,
parentNode, selectedNodeIndex - 1);
}
}
}
}
为什么不在每次移动后重新选择它呢?另外:请分割长行(>70个字符),这样就不需要水平滚动来读取代码。这使得它更容易阅读,因此增加了人们回答你问题的可能性。我想让这个应用程序更加用户友好。假设有10个以上的节点,并且您希望将最后一个节点移动到索引2,那么让用户反复单击箭头按钮来定位它是不好的。这是另一个问题。您最初的问题是如何在更改拓扑后保持选定节点处于选定状态。