0

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

你能看看这个。我真的很感激。

JXTreeTable 所做的只是让我的节点可编辑。如果我确实更改了我的节点,我不想要它,它的编辑将保存整个行,这也是我真的不想要的。

这是我所做的:

初始化

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;
}

}

感谢您的时间和精力。

4

1 回答 1

1

确保您的TreeTableModel回报为真isCellEditable

于 2012-06-22T22:34:22.223 回答