java jtable 为什么表格里面没有显示内容
解决时间 2021-02-12 21:32
- 提问者网友:最爱你的唇
- 2021-02-12 09:50
public void setTable(ResultSet rs) throws SQLException{
Vector title=new Vector();
title.add("姓名");
title.add("性别");
title.add("生日");
title.add("关系");
title.add("电子邮件");
title.add("所在学校");
title.add("家庭住址");
title.add("备注");
DefaultTableModel dm=new DefaultTableModel(title,50);
Vector> data=new Vector>();
Vector d=new Vector();
while(rs.next()){
d.add(rs.getString("name"));
d.add(rs.getString("sex"));
d.add(rs.getString("brithday"));
d.add(rs.getString("relatuion"));
d.add(rs.getString("email"));
d.add(rs.getString("school"));
d.add(rs.getString("adress"));
d.add(rs.getString("other"));
dm.addRow(d);
d.clear();
}
table.setModel(dm);
tabpane.setViewportView(table);
}
在线等!!!
最佳答案
- 五星知识达人网友:猎心人
- 2021-02-12 10:21
dm是model啊,怎么往model里加集合呢,应该加到data这个集合里
public void setTable(ResultSet rs) throws SQLException{
Vector title=new Vector();
title.add("姓名");
title.add("性别");
title.add("生日");
title.add("关系");
title.add("电子邮件");
title.add("所在学校");
title.add("家庭住址");
title.add("备注");
Vector> data=new Vector>();
Vector d=new Vector();
while(rs.next()){
d.add(rs.getString("name"));
d.add(rs.getString("sex"));
d.add(rs.getString("brithday"));
d.add(rs.getString("relatuion"));
d.add(rs.getString("email"));
d.add(rs.getString("school"));
d.add(rs.getString("adress"));
d.add(rs.getString("other"));
data.add(d);
d.clear();
}
DefaultTableModel dm=new DefaultTableModel(title,data);
table=new JTable(dm);
tabpane.setViewportView(table);
}
试试吧
全部回答
- 1楼网友:英雄的欲望
- 2021-02-12 12:13
jtable是java swing中一个表格组件,主要用来以表格的形式展现数据,显示和编辑常规二维单元表。
在java中,若要填充jtable的值,则需要给其赋值两个向量(vector,一个是数据,一个是标题)或者是一个二维数组的数据(object[][])及一个一维数组的标题(object[])。
首先将数据从文件或者数据库中读取出来,然后按行与列组装成vector向量或者二维数组,放入构造好的defaulttablemodel对象中,接着直接载入jtbale即可。数据载入完后,重绘jtable组件即可完成表格的填充及展现。
jtable组件是一个非常好用且强大的组件,实际中还可以对其进行行高与列宽、背景等设置,使其更美观,展现更具友好性。
有没有报错?就是运行没内容么?你确定从数据库里面查出数据了么
我要举报
大家都在看
推荐资讯