Java swing中在JPanel上添加一个JButton,显示,但是添加JTable没有显示。为什么呢?

panel_for_attend_class.add(table_for_attend_class, BorderLayout.SOUTH);
panel_for_attend_class.add(new JButton("Hello"), BorderLayout.WEST);
这个JButton显示正常,但是JTable(第一行代码中的table_for_attend_class),显示不正常。为什么?

因为BorderLayout的布局原理导致这样的,四个角的组件的展示大小是它的preferSize,很不幸Table默认的preferSize是0,所以你放上去是看不到的。你可以设置下Table的PreferSize你就可以看见,不过建议你还是把Table放在Center这个位置。
还有添加JTable的时候别忘了把JTable放在JScrollPane中。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-12-03
你的jtable有datamodel么。还要把jtable再放到JScrollPane 后在放到你的panel中才能正常显示的。没有的话 是显示是不行的啊
第2个回答  2010-12-03
怎么个不正常法呢?没有标题,还是标题显示的A B C啊?
没标题:将table加到JScrollPane中
显示ABC:重写getColumn方法本回答被提问者和网友采纳
第3个回答  2010-12-03
在用Jtable的时候务必要建立model,这里是datamodel,把datamodel建好了再试试。
建议你在如下地方去看看:(你的问题一定能够解决)
http://wenku.baidu.com/view/747895225901020207409cb9.html
相似回答