如何为JTable设置标头?

new*_*bee 14 java swing

使用以下示例代码:

String column_names[]= {"Serial Number","Medicine Name","Dose","Frequency"};
table_model=new DefaultTableModel(column_names,3);
table=new JTable(table_model);
Run Code Online (Sandbox Code Playgroud)

我们希望使用上面的代码在column_names中设置包含列名称的标题,但它不起作用.虽然表已创建,但页眉不可见.

For*_*ega 29

为了能够看到标题,您应该将表放在JScrollPane中.

panel.add(new JScrollPane(table));
Run Code Online (Sandbox Code Playgroud)

或者你可以专门将tableHeader添加到面板中,如果你真的不想要滚动窗格(但是:通常你不想要这种行为):

panel.add(table.getTableHeader(), BorderLayout.NORTH);
panel.add(table, BorderLayout.CENTER);
Run Code Online (Sandbox Code Playgroud)