62,614
社区成员
发帖
与我相关
我的任务
分享
一开始想用判断语句,判断修改前后是否一致来进行更新,但是该语句使用getValueAt,因为在同一个监听函数里,所以预期的改之前的数据testmodel.getValueAt(i, j)和改之后的数据currentModel.getValueAt(i, j)实际上一致,导致if语句一直无法运行。并且如果直接修改table中的数据,原本int类型会变成string,到底应该怎么改(本人没有学过java,是个小白,如果有描述错误可以提建议,我只是利用java来做数据库实验)
JMenuItem mntmNewMenuItem_4 = new JMenuItem("\u4FEE\u6539");
mntmNewMenuItem_4.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {//修改
DefaultTableModel testmodel=null;
table.editingStopped(null);
int i,j;
testmodel = (DefaultTableModel)table.getModel();
for (i=0;i<testmodel.getRowCount();i++)
{
for (j=0;j<testmodel.getColumnCount();j++)
{
if(testmodel.getValueAt(i, j) != currentModel.getValueAt(i, j))
{
//表示这个数据是有问题的,需要进行更新
System.out.print("有数据发生修改了");
}
}
}
}
});