java swing jtable 不能显示 这是关于jtable的一个程序,但是查询数据时,jtable不能显示,帮忙看一下

privatevoiddisplayResultSet(ResultSetrs)throwsSQLException{if(rs.next()){Vectorrows=n... private void displayResultSet(ResultSet rs) throws SQLException {
if (rs.next()) {
Vector rows = new Vector();
Vector columnHeads = new Vector();
try {
ResultSetMetaData rsmd = rs.getMetaData();
for (int i = 1; i <= rsmd.getColumnCount(); ++i)
columnHeads.addElement(rsmd.getColumnName(i));
do {
rows.addElement(getNextRow(rs, rsmd));
} while (rs.next());
JTable jTable = new JTable(rows, columnHeads);
jTable.setSize(new Dimension(383, 81));
JScrollPane scroller = new JScrollPane(jTable);
Container c = getContentPane();
c.remove(2);
c.add(scroller);
c.validate();
c.add(jTable);
jTable.setVisible(true);
} catch (SQLException e) {
e.printStackTrace();
}
}
else{
return;
}

}

private Vector getNextRow(ResultSet rs, ResultSetMetaData rsmd)
throws SQLException {
Vector currentRow = new Vector();
for (int i = 1; i < rsmd.getColumnCount(); ++i)
currentRow.addElement(rs.getString(i));
return currentRow;
}
展开
 我来答
射箭之道
2013-05-15 · TA获得超过280个赞
知道小有建树答主
回答量:279
采纳率:100%
帮助的人:120万
展开全部
Container c = getContentPane();这里可以得到的是一个面板。最好你再设置一下这个面板布局。
JScrollPane scroller = new JScrollPane(jTable);
scroller虽然可以放到这个table但是建意,还是分开得到内容。
比如:
JPanel p=getContentPane();
设置p的布局。当然BorderLayout比如合适 。
jTable放在center,
JTableHeader h= jTable.getTableHeader();
h可以放在上面。
这样就可以显示了,scroller也可以用,放在center再放jTable就行了。

另外当你修改了jtable的内容时,最好能调用一下updateUI方法。
梁城敏锐
2013-05-13 · 超过16用户采纳过TA的回答
知道答主
回答量:104
采纳率:100%
帮助的人:44.1万
展开全部
可以调试一下看看JScrollPane,jTable的状态
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式