JAVA SWING显示数据到JTable显示不了数据,求解... 200
publicclassNAME{Connectionconn=null;Statementstmt=null;publicvoidcreatConnectInstance...
public class NAME { Connection conn = null; Statement stmt = null; public void creatConnectInstance(){ String strurl="jdbc:odbc:driver={SQL Server};Server=192.168.1.200;UID=sa;PWD=5332852;DataBase=smartSchedule"; try{ Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); conn = DriverManager.getConnection(strurl); stmt = conn.createStatement(); }catch(Exception e){ System.out.println(e.getMessage()); } } /* 关闭数据库连接,释放资源 */ public void destroyConnectInstance(){ try{ conn.close(); }catch(Exception e){ System.out.println(e.getMessage()); } } /* 执行SQL,查询任务单 */ public void queryLinkMan(JTable table,JScrollPane jPn){ this.creatConnectInstance(); try{ ResultSet rs = stmt.executeQuery("select * from 下单表"); //jPn = new JScrollPane(table); //table = new JTable(cellData, columnNames); DefaultTableModel tm=new DefaultTableModel(); table.setModel(tm); Vector newRow=new Vector(); String[] colNames={"批次号"}; tm.addColumn(colNames);
while(rs.next()){ newRow.add(rs.getString(1)); tm.addRow(newRow); } }catch(Exception e){ System.out.println(e.getMessage()); } this.destroyConnectInstance(); }}
实际上数据有80条
是不是因为我只是在往初始化好的JTable填充数据,遍历数据后已经在Victor里了,但是没有循环加入JTable
我现在的问题不是在Vector上,Vector应用把add方法该成addElement就是对的。我是table不能自增,他原始就4行,结果循环遍历数据库后addRows是没效果的,还是四行,他不自增加行数了。
以上问题点也解决了,原来JTable一定要放在JScorllPanl里面,但是我怎么放都是位置不对啊,放进去后滚动条也看不到!...
new NAME().queryLinkMan(this.jTable1); jTable1.setSize(new Dimension(400, 500)); JScrollPane scroller = new JScrollPane(); scroller = this.jScrollPane2; scroller.add(jTable1,0);
什么名堂?
满分奉上,会JAVA的朋友帮我看一下,其实,这就是个jScorllPane和jTable控件的应用问题,我搞得连滚动条都看不见了,表格也不能滚动,标题也看不见。代码不要写多了啊,最好简洁一点 展开
while(rs.next()){ newRow.add(rs.getString(1)); tm.addRow(newRow); } }catch(Exception e){ System.out.println(e.getMessage()); } this.destroyConnectInstance(); }}
实际上数据有80条
是不是因为我只是在往初始化好的JTable填充数据,遍历数据后已经在Victor里了,但是没有循环加入JTable
我现在的问题不是在Vector上,Vector应用把add方法该成addElement就是对的。我是table不能自增,他原始就4行,结果循环遍历数据库后addRows是没效果的,还是四行,他不自增加行数了。
以上问题点也解决了,原来JTable一定要放在JScorllPanl里面,但是我怎么放都是位置不对啊,放进去后滚动条也看不到!...
new NAME().queryLinkMan(this.jTable1); jTable1.setSize(new Dimension(400, 500)); JScrollPane scroller = new JScrollPane(); scroller = this.jScrollPane2; scroller.add(jTable1,0);
什么名堂?
满分奉上,会JAVA的朋友帮我看一下,其实,这就是个jScorllPane和jTable控件的应用问题,我搞得连滚动条都看不见了,表格也不能滚动,标题也看不见。代码不要写多了啊,最好简洁一点 展开
3个回答
展开全部
我遇见过相同的问题
将你的实体类或list的初始化位置调调,初始化的位置不对,从而导致你每次读取的都是第一条
将你的实体类或list的初始化位置调调,初始化的位置不对,从而导致你每次读取的都是第一条
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
DefaultTableModel tm=new DefaultTableModel();
String colNames=“批次号”;
tm.addColumn(colNames);
while(rs.next()){
Vector newRow=new Vector();
newRow.add(rs.getString(1));
tm.addRow(newRow);
}
table.setModel(tm);
String colNames=“批次号”;
tm.addColumn(colNames);
while(rs.next()){
Vector newRow=new Vector();
newRow.add(rs.getString(1));
tm.addRow(newRow);
}
table.setModel(tm);
追问
你这不是抄我的吗?我本来就是刚刚接触JAVA的,你们也稀里糊涂,出现这种错误是根本就不了解Vector用法所造成的,Vector成员add好像是添加数值,addElement是添加集合。
追答
你自己去看API吧 我只是随手帮帮你
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
遍历数据后已经在Victor
追问
for(int j=0;j<newRow.size();j++)
{
System.out.println(newRow);
}
测试出来只有一个值!!!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询