Java DefaultTableModel没有';不显示列

Java DefaultTableModel没有';不显示列,java,swing,jtable,jscrollpane,jtableheader,Java,Swing,Jtable,Jscrollpane,Jtableheader,我对DefaultTableModel有问题,它不会在表中显示我的列,代码中有一部分: JTable table = new JTable() { public boolean isCellEditable(int data, int columnNames) { return false; } }; String columnNames[] = new String[] { "First Name", "Last Name

我对DefaultTableModel有问题,它不会在表中显示我的列,代码中有一部分:

JTable table = new JTable() {
        public boolean isCellEditable(int data, int columnNames) {
            return false;
        }
    };
    String columnNames[] = new String[] { "First Name", "Last Name", "Sport", "# of Years", "Vegetarian", "asd", "asd" };
    DefaultTableModel dtm = new DefaultTableModel(0, 0);
    dtm.setColumnIdentifiers(columnNames);

    table.setModel(dtm);
for (Reservation r : reservation) {
        rez.add(new Reservation(r.getID(), r.getA(),    r.getB(), r.getC(), r.getD(), r.getE(), r.getF()));

    }

    for (int i = 0; i < rez.size(); i++) {
        int id = rez.get(i).getID();
        String l = rez.get(i).getA();
        String w = rez.get(i).getB();
        String z = rez.get(i).getC();
        String o = rez.get(i).getD();
        String d = String.valueOf(rez.get(i).getE());
        String g = rez.get(i).getF();
        dtm.addRow(new Object[] { id, l, w, z, d,o,g });

    }


    JScrollPane sp = new JScrollPane(dtm);
    add(table);

}
不关心列的名称和获取者的名称,我为这篇文章更改了它

此外,我无法使其可滚动:

JScrollPane sp = new JScrollPane(dtm);

将表格而不是
TableModel
添加到
JScrollPane

add(new JScrollPane(table));

将表格而不是
TableModel
添加到
JScrollPane

add(new JScrollPane(table));

我不确定这将如何编译

JScrollPane sp = new JScrollPane(dtm);
add(table);
dtm
DefaultTableModel
的一个实例,因此永远不可能将其传递给
JScrollPane

相反,你应该使用

JScrollPane sp = new JScrollPane(table);
add(sp);

有关更多详细信息,请参见和

我不确定这将如何编译

JScrollPane sp = new JScrollPane(dtm);
add(table);
dtm
DefaultTableModel
的一个实例,因此永远不可能将其传递给
JScrollPane

相反,你应该使用

JScrollPane sp = new JScrollPane(table);
add(sp);

有关更多详细信息,请参见和。

列名对我更重要:)列名对我更重要:)列名对我更重要:)@gumovyst您是否确实尝试过上述建议。链接教程明确指出u如果使用的是没有滚动窗格的表格,则必须获取表格标题组件并自行放置。因此,通过正确使用滚动窗格,列名和表格将显示在滚动窗格中,volia,column header抱歉,我正在工作,因此我无法测试它,我将在家中尝试。谢谢:)我做到了,没有效果;(列名对我来说更重要:)@gumovyst甚至你真的尝试过上面的建议。链接教程明确指出u如果使用的是没有滚动窗格的表格,则必须获取表格标题组件并自行放置。因此,通过正确使用滚动窗格,列名和表格将显示在滚动窗格中,volia,column header抱歉,我正在工作,因此我无法测试它,我将在家中尝试。谢谢:)我做到了,没有效果;(