У меня есть класс, как это:Как открыть новое окно
public class A {
public static void main() {
B f1 = new B();
f1.setVisible(true);
}
class B extends JFrame {
public B() {
JButton btn = new JButton("click me");
btn.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
C f2 = new C();
f2.setVisible(true);
}
});
add(btn);
}
}
class C extends JFrame {
public C() {
//whatever here
}
}
}
Когда я первый запустить этот код Java, окно X содержит кнопку «жми меня». После того, как я нажму на него, появится новое окно Y. Но проблема в том, что когда я закрываю новое окно Y, старое окно X автоматически закрывается вместе с Y. (то есть они одновременно закрываются)
Что я хочу сделать, так это то, что после того, как я закрою Y, Х держится там и не закрывается. Как это сделать?
Вы должны изменить аргумент метода 'setDefaultCloseOperation()', который определяет, что происходит при нажатии кнопки закрытия. В этом случае вы должны использовать 'DISPOSE_ON_CLOSE' в качестве аргумента. Причина, по которой обе кадры расположены, заключается в том, что вы устанавливаете аргумент 'EXIT_ON_CLOSE', который завершает * весь процесс *. Если вам нужна дополнительная помощь, пожалуйста, спросите. :) – fireshadow52
Обычно закрытие одного окна не влияет на другое окно. Может быть, вы устанавливаете defaultCloseOperation для выхода? – ControlAltDel
@ fireshadow52 YEAH! Я понял! Спасибо! – sc1013