我創建了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