Java-如何使JTable中的单元格可编辑?

时间:2014-06-27 13:20:23

标签: java user-interface jtable

我的GUI中显示JTable - 目前,当程序加载时,表格完全为空 - 仅显示列标题(那里甚至没有空表)。

我有一个按钮,当点击它时,会在列标题下面的表格中添加一个新的空行。但是,虽然我可以选择添加到表中的每个单元格,但我无法在其中键入任何内容。

我使用以下代码将行添加到表中:

/*Create the button, and add an ActionListener to it */
JButton addBtn = new JButton("Add");
addBtn.addActionListener(new ActionListener(){
    public void actionPerformed(ActionEvent e){

    }
});

public void actionPerformed(ActionEvent arg0){
    System.out.println("Add button pressed. ");
    DefaultTableModel model = (DefaultTableModel)jEntityFilterTable.getModel();

    Object[] obj = new Object[]{};
    model.addRow(obj);
}

此代码目前有效 - 如上所述,每当我点击按钮时,表格中都会添加一个新行,我可以选择每个单独的单元格。

我需要做些什么才能使所选单元格可编辑?我有另一个按钮('编辑'),我希望用户在从表中选择一个单元格后能够点击,一旦他们点击它,他们应该能够在单元格中键入数据。但我不知道如何做到这一点,并且无法在网上找到关于如何将此功能添加到GUI中的按钮的任何内容。

非常感谢任何帮助。

2 个答案:

答案 0 :(得分:0)

@Override
public boolean isCellEditable(int row, int col) { 
    return true; 
}

您可以使用可以切换的变量替换true

答案 1 :(得分:0)

使用一个操作按钮,它接收列和行作为从JOptionPane接收的输入。 然后让使用另一个JOptionPane编辑单元格。