Java DefaultTableModel-如何删除所选行?

时间:2014-07-07 08:20:27

标签: java swing jtable defaulttablemodel

我的Java GUI中显示了一个表,用户可以通过单击“添加”来添加行。按钮。添加到表中的行中的单元格默认情况下都是可编辑的,用户可以根据需要选择每个行/单元格。

我现在想添加从表中删除行的功能,但我似乎找不到使用DefaultTableModel数据类型执行此操作的正确方法。

我已将以下代码添加到我的'删除行'的动作侦听器中按钮:

removeBtn.addActionListener(new ActionListener(){
    public void removeRow(){
        DefaultTableModel model = (DefaultTableModel)jEntityFilterTable.getModel();
        model.removeRow();
    }
});

但是,removeRow()方法需要类型为int的参数(我要删除的行的索引号)。如何获得所选行'来自DefaultTableModel?似乎没有一种方法可以让你这样做......

1 个答案:

答案 0 :(得分:1)

您可以从表中获取索引。

removeBtn.addActionListener(new ActionListener(){
    public void removeRow(){
    int selRow = jEntityFilterTable.getSelectedRow();
    if(selRow != -1) {
        DefaultTableModel model = (DefaultTableModel)jEntityFilterTable.getModel();
        model.removeRow(selRow);
    }
}

});