我只想在我单击JDialog之外的时候关闭JDialog
import javax.swing.JDialog;
import javax.swing.JLabel;
public class DialogFenster extends JDialog {
public DialogFenster(String pText, String pTitel)
{
JDialog meinJDialog = new JDialog();
meinJDialog.setTitle(pTitel);
meinJDialog.setBounds(800, 500, 300, 70);
meinJDialog.setModal(true);
meinJDialog.add(new JLabel(pText));
meinJDialog.setVisible(true);
}
}发布于 2019-12-17 09:24:43
您可以使用WindowListener来了解对话框是否已失去焦点:
JDialog dialog = new JDialog(frame, false);//false for not modal
dialog.addWindowListener(new WindowAdapter() {
public void windowDeactivated(WindowEvent e) {
dialog.dispose();
}
});
dialog.setVisible(true);但它必须是非模式对话框。如果它是模态的,windowDeactivated将永远不会被调用。
https://stackoverflow.com/questions/59359557
复制相似问题