我正在尝试将JTable添加到JTabbedPane。它很好,然而,列的标题是不可见的。
这是我的代码的相关部分:
JTabbedPane jp = new JTabbedPane();
static JTable t1 = new JTable();
static MainFrame f = new MainFrame();
static DefaultTableModel model = new javax.swing.table.DefaultTableModel();
f.scroll.add(jp);
f.scroll.setViewportView(jp);
jp.addTab("Tab 1", null, t1, "");
t1.setModel(model);
model.addColumn("Description");
model.addColumn("Change");
model.setRowCount(1);
model.fireTableStructureChanged();
其中f是JFrame,f.scroll是JScrollPane
答案 0 :(得分:2)
将JTable
添加到JScrollPane
,然后TableHeader
应该可见,然后将JScrollPane
添加到JTabedpane
,否则必须添加TableHeader
1}}以编程方式
请勿致电model.fireTableStructureChanged();
,此事件已在使用的DefaultTableModel
最好是创建列,添加行,这两个值放在DefaultTableModel(Object或Vector)
将此模型添加到JTable
,例如table = new JTable(myModel);
答案 1 :(得分:0)
不是将JTabbedPane添加到滚动窗格,然后将表格添加到tabbedpane,只需将tabbedpane添加到框架(f),然后将滚动窗格添加到其中的选项卡1,然后将表格设置为滚动窗格的视口。
结构:
JFrame {
JTabbedPane {
Tab 1 {
JScrollPane {
JTable
}
}
Tab 2 {
}
tab 3 {
}
}
}