TITLE:JFrameの複数作成と終了

JFrameの複数作成と終了

編集者:Terai Atsuhiro
作成日:2005-06-27
更新日:2021-04-09 (金) 19:43:05

概要

JFrameを複数作成し、これらをすべて閉じた時にアプリケーションを終了します。

#screenshot

サンプルコード

private static int number = 0;
public static JFrame createFrame(String title) {
  JFrame frame = new JFrame(title);
  number++;
  frame.addWindowListener(new WindowAdapter() {
    public void windowClosing(WindowEvent e) {
      number--;
      if(number==0) {
        JFrame f = (JFrame)e.getSource();
        f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
      }
    }
  });
  return frame;
}
  • &jnlp;
  • &jar;
  • &zip;

解説

上記のサンプルでは、WindowListenerで終了時に自分が最後のフレームの場合だけsetDefaultCloseOperation(JFrame.EXIT_ON_CLOSE)するように設定しています。

コメント