java - 当我最小化框架时面板组件消失

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

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

最佳答案

  • 用于 JFrame/JDialog/JWindow

使用

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

关于java - 当我最小化框架时面板组件消失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12070911/

相关文章:

java - 在 Ubuntu 中编译 Servlet 返回错误

java - 可观察的java对象不更新

java - 默认情况下将jTextArea设置为visible false

python - 除了浏览器扩展之外,还有其他方法可以将 GUI 栏悬停在用户访问的任何网站上吗?

c# - 如何禁用 WinForms DataGrid 中的按钮单元格?

java - Spring 3 MVC : Java Based Config using servlet container 2. 5抛出404

java - Firebase 实时数据库通常是如何收费的?

java - 如何在JPanel内部绘画

java - 无法让 JFrame 刷新图像

java - 如何从我的 Jframe 按钮调用访问 main 中的 LinkedList