2017-10-17 19 views
0

それぞれ4つの異なるJFramesを作成し、それぞれに終了ボタンがあります。新しいフレームをクリックして親/祖先フレームを終了する方法

  • 終了ボタンをクリックすると新しいフレームが尋ねられます - 本当ですか?。ボタンがあります:はい&いいえ
  • はいを​​クリックすると、コールが生成されたフレームだけでなく、現在のフレームも閉じます。

私は

closeOptionPane.this.dispose(); 

使用し、現在のフレームを閉じるには、しかし、どのように私は、先祖や親のフレームを閉じることができますか?

答えて

1

終了ボタンをクリックすると、新しいフレームが表示されます。本当ですか?

これはJFrameであってはなりません。これはJOptionPaneでなければなりません。 JOptionPaneは、そのボタンをクリックすると自動的に閉じます。

詳細および例については、How to Make Dialogsを参照してください。

それぞれが

だから、あなたがボタンにActionListenerを追加しなければならない、終了ボタンがあります。したがって、アクションリスナーの基本コードは次のようになります。

int result = JOptionPane.showConfirmDialog(...); 

if(result == JOptionPane.YES_OPTION) 
{ 
    JButton button = (JButton)event.getSource(); 
    Window window = SwingUtilities.windowForComponent(button); 
    window.dispose(); 
} 
関連する問題