gpt4 book ai didi

java - 禁用 JTree 中的标准鼠标行为

转载 作者:行者123 更新时间:2023-12-01 14:59:53 24 4
gpt4 key购买 nike

我有一个 JTree,在特定情况下我想将其切换到“无用户输入模式”。在此模式下,用户应该无法更改树的选择。但是,当前选择应保持不变,并且仍应能够以编程方式进行更改。

我尝试设置tree.setFocusable(false) -> 用户仍然可以更改选择

我构建了一个使用点击事件的 MouseListener -> 用户仍然可以更改选择

我尝试了tree.setSelectionModel(null) ->没有可见的选择

原则上我可以tree.setEnabled(false),但随后树会变成灰色且丑陋。

关于如何阻止用户更改选择,或者如何在禁用状态下正常绘制 JTree 有什么想法吗?

最佳答案

我想我会做类似的事情:

    tree.addChangeListener(new ChangeListener() {
@Override
public void stateChanged(ChangeEvent arg0) {
TreePath path = ... // The path of the node you want to be selected
tree.setSelectionPath(path);
}
});

当选择发生变化时,您可以再次选择所需的节点。

关于java - 禁用 JTree 中的标准鼠标行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13823348/

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