在选择好供应商,货品名称,填好数量后,按“增加”按钮,在JTabel中就添加这条数据
如何实现在填一条新的数据,就能在表的第2行的添加数据,而保留原来第1行的数据
“增加”按钮的代码,该如何修改
private void addproductActionPerformed(ActionEvent event)
{
DefaultTableModel tablemodel = null;
String[] name1 = {"货品编号","货品名称","计量单位","入库数量","入库单价","总金额","附注"};
tablemodel = new DefaultTableModel(name1,0);
String sqlStr = null;
sqlStr = "SELECT jiliangdanwei(//计量单位),kcjunjia(//单价) FROM SPZL(//商品资料表) where name='"+comboBox1(//货品名称combobox).getSelectedItem()+"'";
RetrieveObject retrieve = new RetrieveObject();
java.util.Vector vdata = null;
vdata = retrieve.getObjectRow(sqlStr);
java.util.Vector vrow = new java.util.Vector();
vrow.addElement(jtextfield1.getText().trim());
vrow.addElement(comboBox1.getSelectedItem());
vrow.addElement(vdata.get(0));
vrow.addElement(textField.getText().trim());
vrow.addElement(vdata.get(1));
//计算总价格
float danjia=Float.parseFloat(vdata.get(1).toString());
int shuliang =Integer.parseInt(textField.getText());
float zongjine=danjia*shuliang;
vrow.addElement(zongjine);
vrow.addElement(textField_3.getText().trim());
tablemodel.addRow(vrow);
jTable12.setModel(tablemodel);
jTable12.setRowHeight(20);
}
改成
tablemodel = jTable12.getModel();
public void addColumn(TableColumn aColumn)
将 aColumn 追加到此 JTable 的列模型所保持的列数组的尾部。如果 aColumn 的列名称为 null,则将 aColumn 的列名称设置为 getModel().getColumnName() 所返回的名称。
要向此 JTable 添加一列,以用给定的 width、cellRenderer 和 cellEditor 来显示模型中第 modelColumn 列的数据,可以使用以下方法:
addColumn(new TableColumn(modelColumn, width, cellRenderer, cellEditor));
[TableColumn 构造方法中的任何一个方法都可以用来替代此方法。]模型的列号存储在 TableColumn 中,在呈现和编辑过程中使用该列号来定位模型中合适的数据值。当列在视图中重新排序时,不更改模型的列号。