JXTreeTable - 我的节点是可编辑的,但其他单元格不可编辑

时间:2012-06-22 22:07:13

标签: java swing swingx jxtreetable

这让我很困惑。到目前为止我将展示我的代码。 我试图使某些字段可编辑。这是最终目标,但我只是试图放入一个JCheckBox来测试。但即使这样似乎也不起作用。

你能看一下吗?我真的很感激。

所有JXTreeTable都可以使我的节点可编辑。我不想要的,如果我改变我的节点,它的编辑将保存整行,我也不想要。

这就是我所做的:

Intialization

JXTreeTable table = new JXTreeTable(Shared.model);
table.setDefaultEditor(Object.class, new ComplexCellEditor());
table.setRootVisible(false);
table.setEditable(true);
table.getColumnModel().getColumn(0).setPreferredWidth(200);
table.setColumnControlVisible(true);

这是我的ComplexCellEditor.java

class ComplexCellEditor extends DefaultCellEditor{
public ComplexCellEditor() {
    super(new JTextField());
    Console.t("here");
}
public Component getTreeCellEditorComponent(JTree tree, Object value, boolean isSelected, boolean a, boolean b, int row)
{
    Component component = super.getTreeCellEditorComponent(tree, value, isSelected, a , b, row);

        Console.t("here");   <--**//THIS DOESN'T EVEN GET PRINTED**
        JCheckBox chk= new JCheckBox();
        return chk;
}

}

感谢您的时间和精力。

1 个答案:

答案 0 :(得分:1)

确保TreeTableModel的{​​{1}}返回true。