【问题标题】:Closing a JFrame from another Method从另一个方法关闭 JFrame
【发布时间】:2016-06-27 21:50:28
【问题描述】:

此加载窗口打开,我希望它在 closeLoadingWindow 方法运行后关闭。我有一个按钮可以触发另一个类中的 closeLoadingWindow 方法。有什么帮助吗??

import java.awt.BorderLayout;
import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;

public class LoadingScreen {


  public static void createLoadingWindow()
  {
   JFrame LoadingFrame = new JFrame("Loading");
   LoadingFrame.setExtendedState(JFrame.MAXIMIZED_BOTH);

   JPanel LoadingPanel = new JPanel();
   LoadingFrame.add(LoadingPanel, BorderLayout.NORTH);

   ImageIcon LoadingGif = new ImageIcon();
   JLabel LoadingLabel = new JLabel(LoadingGif);
   LoadingPanel.add(LoadingLabel);
   LoadingFrame.setVisible(true);
  }

  public static void closeLoadingWindow()
  {
     dispose();
  }
}

【问题讨论】:

  • 你应该在框架上调用dispose()

标签: java methods jframe jpanel


【解决方案1】:

如果你这样初始化加载帧:

public class LoadingScreen{
    JFrame LoadingFrame;
    public void createLoadingWindow(){
          LoadingFrame = new JFrame("Loading");
          ...
    }
    public void closeLoadingWindow(){
         LoadingFrame.dispose();
    }
}

或者您可以将帧加载帧作为参数传递给 close LoadingWindow() 方法:

public void closeLoadingWindow(JFrame LoadingFrame){
     LoadingFrame.dispose();
}

【讨论】:

    猜你喜欢
    • 2012-03-20
    • 1970-01-01
    • 2010-12-29
    • 1970-01-01
    • 1970-01-01
    • 2015-10-15
    • 1970-01-01
    • 1970-01-01
    • 2021-10-10
    相关资源
    最近更新 更多