</pre><pre name="code" class="java">// 创建表格 MTable table = new MTable(tableModel); // 为表格模型添加事件监听器 tableModel.addTableModelListener(new TableModelListener() { public void tableChanged(TableModelEvent e) { int type = e.getType();// 获得事件的类型 int row = e.getFirstRow();// 获得触发此次事件的表格行索引 int column = e.getColumn();// 获得触发此次事件的表格列索引 if(column==6) return;//更改金额小计时不触发事件,金额小计栏的索引值:6,这行代码很重要,不加狂报错 if (type == TableModelEvent.UPDATE) { //修改金额小计一栏的数值 TableModel model = (TableModel)e.getSource();//自动获取表格模型 String columnName = model.getColumnName(column); Object data = model.getValueAt(row, column); float v=Float.parseFloat(data.toString()); Object shop_price=model.getValueAt(row,2); float f = Float.parseFloat(shop_price.toString()); model.setValueAt((f*v),row,(column+1)); //System.out.println(f+","+v+","+String.format("%.2f",f*v)+","+row+","+(column+1)); } } });