JTable更新数据

zz from http://hi.baidu.com/hansel07/blog/item/b863f423d1041efad7cae222.html

做通讯录需要JPanel,可是完全不懂。。。找到这个总算解决了~

//初始化数据
private JTable TblResult=null;
//表格列向量
Vector cell;

//声明表格模型
DefaultTableModel tablmod=new DefaultTableModel();
//表格头数组
String[] colNames={"列1","列2","列3","列4"};
//将表格头转换过向量类型,以备表格模型使用
Vector tmpVec=new Vector();

for (int i=0;i {
tmpVec.add(colNames[i]);
}

//表格行向量
Vector row=new Vector();
Vector tmprow=new Vector();
//初始化数据
for (int i=0;i<40;i++)
{
cell=new Vector();
cell.add(Integer.toString(i+1) + "行1列");
cell.add(Integer.toString(i+1) + "行1列");
cell.add(Integer.toString(i+1) + "行1列");
cell.add(Integer.toString(i+1) + "行1列");
row.add(cell);
}
//设置表格模型
tablmod.setDataVector(row,tmpVec);
TblResult=new JTable(test);
TblResult.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);


for (int i=0;i<40;i++)
{
cell=new Vector();
cell.add(Integer.toString(i+1) + "行1列");
cell.add(Integer.toString(i+1) + "行1列");
cell.add(Integer.toString(i+1) + "行1列");
cell.add(Integer.toString(i+1) + "行1列");
row.add(cell);
}



//刷新数据代码
//定义Vector 类型变量tmprow,colVec,并且赋值,就象上面那样,这里不重复了
DefaultTableModel tablmod=(DefaultTableModel)TblResult.getModel();
tablmod.setDataVector(tmprow,colVec);

TblResult.validate();
TblResult.repaint();

你可能感兴趣的:(java)