这是我整个代码的一部分。我按下按钮显示电影,然后转到新的框架,必须显示表格。它发生但没有标题/标题部分表
//Record Show
if(e.getSource()==ShowMovies){
Frame frame = new JFrame("Show Movies");
frame.setBounds(10, 20, 500, 500);
Container cntr = frame.getContentPane();
cntr.setLayout(null);
frame.setVisible(true);
frame.setDefaultCloseOperation(JFrame.HIDE_ON_CLOSE);
//f=new JFrame();
String col[] = {"ID","NAME","SALARY"};
String data[][] = {
{"101","Amit","670000"},
{"102","Jai","780000"},
{"101","Sachin","700000"}};
JTable jt=new JTable(data,col);
jt.setBounds(100,40,300,300);
jt.setPreferredScrollableViewportSize(new Dimension(400,50));
jt.setFillsViewportHeight(true);
JScrollPane jsp=new JScrollPane(jt);
frame.add(jt);
}
答案 0 :(得分:2)
请勿使用null layout
!使用适当的布局经理!并且不要使用setBounds(...)
。
在您添加所有元素之后,在setVisible(true);
上调用JFrame
,而不是之前。
您将JTable
直接添加到JFrame
,而是将JScrollPane
添加到JFrame
,Swing组件只能添加到容器中一次(这可能是您的问题的解决方案,但请遵循建议1和2,因为它们都与您的问题(或未来的问题)有关)。
变化:
frame.add(jt);
要:
frame.add(jsp);
答案 1 :(得分:0)
将JTable放在JScrollPane中。试试这个:
add(new JScrollPane(jt));