java 窗口模态_Java swing中模态窗口上的模态窗口?

我有一个主要的应用程序窗口(JFrame),填满整个屏幕。

单击按钮时,会出现一个较小的窗口,让用户输入一些数据。当用户这样做时,主窗口既不应该跳到它的前面,也不允许交互。

解决方案:打开一个模态JDialog。我们可以调用该对话框1.

但是,当点击此对话框中的按钮时,会弹出一个新窗口(是/否对话框),并且需要在已有模态的JDialog对话框1上运行模态试图做到这一点,第二个对话框不断消失在第一个之后。

我试图让Dialog 1成为一个JFrame,但是当然,我放弃了“模态”位。强制对话框1仍然保持主窗口的按钮可点击。

我错过了什么?我怎样才能把一个模态摇摆窗口在另一个模态摇摆窗口?

编辑:

开主类:

public class MainWin extends JFrame {

public MainWin(){

this.setSize(800,800);

JButton b = new JButton("click hehe");

this.getContentPane().add(b);

b.addActionListener(new ActionListener() {

@Override

public void actionPerformed(ActionEvent e) {

new Dia1(MainWin.this);

}

});

this.setVisible(true);

}

}

我有一个主要的应用程序窗口(JFrame),填满整个屏幕。 单击按钮时,会出现一个较小的窗口,让用户输入一些数据。当用户这样做时,主窗口既不应该跳到它的前面,也不允许交互。 解决方案:打开一个模态JDialog。我们可以调用该对话框1. 但是,当点击此对话框中的按钮时,会弹出一个新窗口(是/否对话框),并且需要在已有模态的JDialog对话框1上运行模态试图做到这一点,第二个对话框不断消失在第一个之后。 我试图让Dialog 1成为一个JFrame,但是当然,我放弃了“模态”位。强制对话框1仍然保持主窗口的按钮可点击。 我错过了什么?我怎样才能把一个模态摇摆窗口在另一个模态摇摆窗口? 编辑: 开主类: public class MainWin extends JFrame { public MainWin(){ this.setSize(800,800); JButton b = new JButton("click hehe"); this.getContentPane().add(b); b.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { new Dia1(MainWin.this); } }); this.setVisible(true); } }
经验分享 程序员 微信小程序 职场和发展