2013-03-23 4 views
1

첫 번째 나쁜 영어로 죄송합니다.어떻게 창을 닫을 수 없습니까?

안녕하세요, 나는 confirmDialog를 YES_NO_OPTION과 함께 사용하려고합니다. 내가 원하는 것은 내가 프레임을 닫을 때 닫고 싶은지 묻는 confimDialog가 표시된다는 것입니다.

final JFrame frame = new JFrame("2D Game"); 
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
frame.setSize(1600,600); 
frame.setResizable(false); 

    private void continuerButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_continuerButtonActionPerformed 
     int level=getlevel(); 
     System.out.println(niveau); 
     if(niveau == 1) 
     { 
      this.dispose(); 
      frame.add(new Board()); 
      frame.setVisible(true); 
      frame.addWindowListener(new WindowAdapter() { 
      public void windowClosing(WindowEvent e) 
      { 
       doExitOption(); 
      } 
      }); 
     } 
    } 

:

내가 아니오 confirmDialog이

을 사라지는 것 누르면 네 모든 것이 폐쇄 될 최대량 눌러하지만 난 누르면 문제가 짝수 경우 프레임이를 닫 아무 버튼도 내 코드입니다 이것은 doExitOption 메도입니다 : 당신은 JFrame의 기본 닫기 동작을 변경해야

public void doExitOption() 
    { 
     int option=JOptionPane.showConfirmDialog(null, "do you want to quit the game", "Warnning",JOptionPane.YES_NO_OPTION); 
      if(option == JOptionPane.YES_OPTION) 
      { 
       frame.dispose(); 
      } 
    } 

답변

3

Closing an Application를 참조하십시오 :창을 처분하게되는 경우에만 호출입니다. 그것은 당신을 위해 기본 닫기 작업을 관리 할 수 ​​있습니다.

3

있도록로 전화

frame.setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE); 
+0

감사합니다. 당신이 나를 도왔습니다. –

0

JFrame의 기본 닫기를 DO_NOTHING_ON_CLOSE으로 변경하십시오.

관련 문제