0

我想将 table2 添加到已经有 table1 的滚动面板(称为反馈)中。但只有一张桌子出现。如果我使用feedback.add(table2),则只显示第一个表(我猜第二个表在第一个表后面,但我不知道如何使第二个表低于第一个表)。如果我使用 feedback.getViewport().add(table2, null),则仅显示第二个表。我需要在这里使用一些布局管理器吗?我试图在网上搜索有关滚动面板布局的信息,但没有得到任何解决方案。谁能告诉我有什么问题或给我一些相关的示例链接?非常感谢。相关代码为:

        content = getContentPane();
        content.setLayout(new FlowLayout());
        scrollPane = new JScrollPane(tree);
        feedback = new JScrollPane(table1);
        JSplitPane splitPane = new JSplitPane(JSplitPane.VERTICAL_SPLIT,scrollPane, feedback);
        content.add(splitPane);
            .
            .
            .
            .
        feedback.add(table2);
        //i add this, but still doesn't work 
        content.add(table2);
4

1 回答 1

11

只能将单个组件添加到 JScrollPane 的“视口”。这是通过使用:

JScrollPane scrollPane = new JScrollPane( table );

或者

scrollPane.setViewportView( table );

如果您希望多个组件出现在 a 中scrollPane,请先将组件添加到面板,然后将面板添加到视口。

阅读 JScrollPane API 以获取更多信息,并点击指向 Swing 教程的链接以及示例。

于 2010-02-26T21:42:48.023 回答