1

我的问题是里面JScrollPane没有显示。JTable当我初始化一个没有JScrollPane一切正常的表时。

如何使JScrollPane不隐藏JTable

private void initComponents() {
    setLayout(new GroupLayout());
    add(getJComboBox0(), new Constraints(new Leading(24, 284, 12, 12), new Leading(45, 10, 10)));
    add(getJLabel0(), new Constraints(new Leading(24, 12, 12), new Leading(17, 12, 12)));
    add(getJButton1(), new Constraints(new Leading(320, 12, 12), new Leading(86, 10, 10)));
    add(getJButton0(), new Constraints(new Leading(320, 126, 12, 12), new Leading(45, 12, 12)));
    add(getJScrollPane1(), new Constraints(new Leading(25, 282, 12, 12), new Bilateral(82, 12, 26, 403)));
    setSize(1200, 650);
}

private JScrollPane getJScrollPane1() {
    if (jScrollPane1 == null) {

        jScrollPane1 = new JScrollPane();
        jScrollPane1.setViewportView(getJTable1());
    }
    return jScrollPane1;
}

private JTable getJTable1() {
    if (testCaseTable == null) {
        ProjectTableModel ptm =new ProjectTableModel();
        testCaseTable = new JTable();
        testCaseTable.setModel(ptm);


    }
    return testCaseTable;
}
4

2 回答 2

1

如果没有看到您的代码很难回答,但请确保您将 . 添加JScrollPane到您JFrameJTable.

因此,对于没有滚动的表格,您可以这样做...

add(myTable);

并添加滚动你这样做......

add(new JScrollPane(myTable));

现在我可以看到你的代码,我会改变这一行......

jScrollPane1 = new JScrollPane();
jScrollPane1.setViewportView(getJTable1());

简直就是这样……

jScrollPane1 = new JScrollPane(getJTable1());

此外,正如@alain 所指出的,以下行不应该编译......

setLayout(new GroupLayout());

所以你为什么不把它改成这个,然后试一试......

setLayout(new GroupLayout(this));
于 2012-06-20T10:21:13.240 回答
1

您提供的代码无法编译:

setLayout(new GroupLayout());

类 GroupLayout没有空的构造函数。

将其替换为:

setLayout(new GridLayout());
于 2012-06-20T10:50:09.033 回答