当我尝试从java中的表中删除行时,我遇到了一些问题.特别是,我使用DefaultTableModel,当我尝试删除行时,使用该removeRow(int row)方法,最后一行被删除,无论是什么row.例如,假设我们有六行.当removeRow(0)或removeRow(2)或removeRow(5)叫,最后一行是始终去除.任何想法,为什么会这样?
谢谢
---更新
当按下jtable的特定单元格时,应移除相应的行.
class TagsTableMA extends MouseAdapter {
@Override
public void mousePressed(MouseEvent e){
Point p = e.getPoint();
int row = tagsJT.rowAtPoint(p);
int column = tagsJT.columnAtPoint(p);
if (column == COLUMN_DELETE_TAG){
DocDialog docDialog = new DocDialog(parentMainJF,
true,
null,
"Please confirm...",
"Are you sure you want to delete the \"" +
tagsJT.getValueAt(row, COLUMN_TAG_NAME) +
"\" tag?",
DocDialog.TYPE_YES_NO);
docDialog.show();
int answer = docDialog.getAnswer();
if (answer == DocDialog.YES)
model.removeRow(row);
}
} …Run Code Online (Sandbox Code Playgroud)