Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/388.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 通过鼠标单击调用JTable的TableCellUpdated_Java_Swing_Jtable_Mouseclick Event - Fatal编程技术网

Java 通过鼠标单击调用JTable的TableCellUpdated

Java 通过鼠标单击调用JTable的TableCellUpdated,java,swing,jtable,mouseclick-event,Java,Swing,Jtable,Mouseclick Event,我对JTable使用了fireTableCellUpdatedfireTableCellUpdated当我在单元格和已更新单元格上通过键盘时调用,但当我直接单击单元格并进行更新时,fireTableCellUpdated不会调用。我不知道为什么需要调用任何额外的方法?您不应该直接调用fireTableCellUpdated()。此方法仅由TableModel调用。是的,您是对的,但当我通过键盘时,我得到tableFinishItem.getSelectedRow()=selectedrow,但通

我对
JTable
使用了
fireTableCellUpdated
fireTableCellUpdated
当我在单元格和已更新单元格上通过键盘时调用,但当我直接单击单元格并进行更新时,
fireTableCellUpdated
不会调用。我不知道为什么需要调用任何额外的方法?

您不应该直接调用
fireTableCellUpdated()
。此方法仅由TableModel调用。是的,您是对的,但当我通过键盘时,我得到tableFinishItem.getSelectedRow()=selectedrow,但通过鼠标单击,我得到tableFinishItem.getSelectedRow()=-1。不知道为什么?
不知道为什么?
-我们也不知道,因为我们不知道您在做什么。我使用以下代码创建表:字符串col[]={“S.N.”、“Product”、“Qty”};字符串数据[][]={{{,'',''};tableModelFinishItem=new DefaultTableModel(数据,列){@Override public void fireTableCellUpdated(int行,int列){if(tableFinishItem.getSelectedRow()>=0){System.out.println(“检查fireTableCellUpdated调用与否”);};谢谢Camickr的帮助,我已经解决了这个问题。