我创建了JScrollPane
,并且希望在该JScrollPane
内显示不同的JPanel
,具体取决于我从用户处获得的输入。出于某种原因,我的JScrollPane
保持空白,并且从不描绘Panel
中的内容。在JScrollPane中更新JPanel不起作用
private JScrollPane panelView;
// Creating my ScrollPane with a blank JPanel
panelView = new JScrollPane(new JPanel());
// Scenario1 is my top level JPanel, also contains a JTree
scenario1.add(panelView, BorderLayout.CENTER);
我的代码,当我得到的行动来更新显示的JPanel。我已经通过调试器确认我正确地执行了此代码。
// Remove previous displayed JPanel within JScrollPane
panelView.removeAll();
if(node.equals(nodes.loginDefaultUser))
{
loginDefaultUserPanel = new LoginDefaultUserPanel();
panelView.add(loginDefaultUserPanel);
}
else if(node.equals(nodes.addUsers))
{
addUsersPanel = new AddUsersPanel();
panelView.add(addUsersPanel);
}
else if(node.equals(nodes.getVersions))
{
getVersionsPanel = new GetVersionsPanel();
panelView.add(getVersionsPanel);
}
panelView.revalidate();
panelView.repaint();
删除'panelView.removeAll()'的How to use Scroll Panes,只是使用'panelView.setViewportView' – Reimeus