当我最小化帧时,面板组件消失

时间:2012-08-22 10:13:58

标签: java swing user-interface jframe jpanel

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

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();
            }
}

现在,如果我最小化框架然后把它带到前面我发现所有主面板的组件都消失了!无论如何,当我用鼠标组件悬停在它们上面时再次显示。 有什么问题?

1 个答案:

答案 0 :(得分:4)

  • 代表JFrame / JDialog / JWindow

使用

validate(); (revalidate in Java7 )
repaint();