问题描述
这里我有一个循环,当单击“删除”按钮时,它将获取表中突出显示的行的索引
private void jButton5MouseClicked(java.awt.event.MouseEvent evt) {
//DefaultTableModel model = (DefaultTableModel) jTable2.getModel();
int[] row = jTable2.getSelectedRows();
for (int i =0; i < jTable2.getSelectedRowCount();i++){
int rows = jTable2.convertRowIndexToModel(row[i]);
System.out.println("row [" + rows +"]");
//model.removeRow(rows);
}
}
控制台图片:Console output
但是,当我添加 model.removeRow(rows)
以根据它记录的索引删除行时,它并没有删除它。
示例:
private void jButton5MouseClicked(java.awt.event.MouseEvent evt) {
DefaultTableModel model = (DefaultTableModel) jTable2.getModel();
int[] row = jTable2.getSelectedRows();
for (int i =0; i < jTable2.getSelectedRowCount();i++){
int rows = jTable2.convertRowIndexToModel(row[i]);
System.out.println("row [" + rows +"]");
//added
model.removeRow(rows);
}
}
这是点击删除按钮后的输出,它只删除了2行 并且控制台只输出 2 个索引而不是 3 个索引
Table After Button Click Pic:Table
控制台图片:Console Output
问题可能是
model.removeRow(rows);
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)