转自https://blog.csdn.net/exedllnet/article/details/50272345
注释来自https://zhidao.baidu.com/question/2120030559976418867.html
新建:(原理:用model给jtable填充数据,vector给model填充数据,vector给vector填充数据)
Vector vData = new Vector(); // 数据行向量集,因为列表不止一行,往里面添加数据行向量,添加方法add(row)
Vector vName = new Vector(); // 列名(标题)向量,使用它的add()方法添加列名
vName.add(“column1”);
vName.add(“column2”);
Vector vRow = new Vector(); //数据行向量,使用它的add()添加元素,比如整数、String、Object等,有几行就new几个行向量。 其中的元素就是单元格的内容
vRow.add(“cell 0 0”);
vRow.add(“cell 0 1”);
vData.add(vRow.clone());
vData.add(vRow.clone());
DefaultTableModel model = new DefaultTableModel(vData, vName); //新建一个默认数据模型
JTable jTable1 = new JTable();
jTable1.setModel(model);
/用JScrollPane装载JTable,这样超出范围的列就可以通过滚动条来查看/
JScrollPane scroll = new JScrollPane(jTable1);
scroll.setSize(300, 200);
scroll.setLocation(650, 300);
jFrame.add(scroll);
添加:(原理:重新set一下model即可,改的是new() model时候的数据而已,即vData)
Vector vRow1 = new Vector(); //用来储存添加内容的行向量
vRow1.add(“cell 2 0”);
vRow1.add(“cell 2 1”); //要添加的行的内容
vData.add(vRow1); //将新行向量(其中有若干行)添加到行向量集
model = new DefaultTableModel(vData, vName); //添加后生成新模型
jTable1.setModel(model); //根据新模型设置表格