JTable列标题不可见

Lal*_*and 28 java swing

列标题在我的JTable中不可见我创建了一个JPanel并将JTable添加到JPanel.

Object rowData[][] = { { "Row1-Column1", "Row1-Column2", "Row1-Column3"},
                { "Row2-Column1", "Row2-Column2", "Row2-Column3"} };
            Object columnNames[] = { "Column One", "Column Two", "Column Three"};
            JTable jTable = new JTable(rowData, columnNames); 
Run Code Online (Sandbox Code Playgroud)

Ami*_*ani 55

JTable的API声明:

"请注意,如果您希望在独立视图中使用JTable(在JScrollPane之外)并希望显示标题,您可以使用getTableHeader()获取它并单独显示它."

或者只是将表格添加到滚动窗格,然后将滚动窗格添加到面板中......


BJ *_*ruz 15

以下是如何在不使用JScrollPane的情况下向JTable添加标头:

int rows = 21;
int cols = 3;
JTable table = new JTable(rows, cols);
JTableHeader header = table.getTableHeader();
JPanel panel = new JPanel();
panel.setLayout(new BorderLayout());
panel.add(header, BorderLayout.NORTH);
panel.add(table, BorderLayout.CENTER);
Run Code Online (Sandbox Code Playgroud)