4

我有一个带有主面板的布局,其内容由我通过按钮以这种方式决定:

public void actionPerformed(ActionEvent e) {
    mainPanel.removeAll(); //removing all current panel components
    if(e.getActionCommand().equals("content1")){
        mainPanel = new Content1Panel();
        add(mainPanel,BorderLayout.CENTER);
        validate();
    }else if(e.getActionCommand().equals("content2")){
        mainPanel = new Content2Panel();
        add(mainPanel,BorderLayout.CENTER);
        validate();
            }
}

现在,如果我将框架最小化然后将其放在前面,我会发现所有主面板的组件都消失了!无论如何,当我将鼠标悬停在它们上时,鼠标组件再次显示。怎么了?

4

1 回答 1

4
  • 对于JFrame// JDialog_JWindow

使用

validate(); (revalidate in Java7 )
repaint();
于 2012-08-22T10:21:31.363 回答