我的Java GUI中显示了一个表,用户可以通过单击“添加”来添加行。按钮。添加到表中的行中的单元格默认情况下都是可编辑的,用户可以根据需要选择每个行/单元格。
我现在想添加从表中删除行的功能,但我似乎找不到使用DefaultTableModel
数据类型执行此操作的正确方法。
我已将以下代码添加到我的'删除行'的动作侦听器中按钮:
removeBtn.addActionListener(new ActionListener(){
public void removeRow(){
DefaultTableModel model = (DefaultTableModel)jEntityFilterTable.getModel();
model.removeRow();
}
});
但是,removeRow()
方法需要类型为int
的参数(我要删除的行的索引号)。如何获得所选行'来自DefaultTableModel
?似乎没有一种方法可以让你这样做......
答案 0 :(得分:1)
您可以从表中获取索引。
removeBtn.addActionListener(new ActionListener(){
public void removeRow(){
int selRow = jEntityFilterTable.getSelectedRow();
if(selRow != -1) {
DefaultTableModel model = (DefaultTableModel)jEntityFilterTable.getModel();
model.removeRow(selRow);
}
}
});