现在的位置: 首页 > 综合 > 正文

JAVA更改Jtable的数量列值,自动计算金额小计列值的源代码

2018年01月30日 ⁄ 综合 ⁄ 共 793字 ⁄ 字号 评论关闭
</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));
		}					
	}
});	

抱歉!评论已关闭.