0

我需要可编辑JTree,但应该通过双击节点或按 F2 来开始编辑,而不是按默认设置的那样按鼠标/单击节点。

禁用处理鼠标按下或单击 JTree(或任何其他类似组件,例如 JTable)但保持选择处理的最佳方法是什么?

我有开始编辑的代码我只需要关闭 JTree 开始编辑另一个事件。

4

1 回答 1

3

据我了解,您需要管理 的编辑器JTree,这是一个简单的示例:

    JTree t = new JTree();
    t.setEditable(true);
    TreeCellRenderer cellRenderer = t.getCellRenderer();
    DefaultTreeCellEditor cellEditor = new DefaultTreeCellEditor(t, (DefaultTreeCellRenderer) cellRenderer){
        @Override
        public boolean isCellEditable(EventObject arg0) {
            if(arg0 instanceof MouseEvent){
                return ((MouseEvent)arg0).getClickCount() > 2;
            }
            return super.isCellEditable(arg0);
        }
    };
    t.setCellEditor(cellEditor);

检查DefaultTreeCellEditor和它的方法isCellEditable(EventObject arg0)

于 2013-11-13T11:26:13.080 回答