管理 JDialog 关闭行为
Managing JDialog close behaviour
我正在使用 JDialog window 在显示我的实际应用程序之前显示 "pin entry" window 的形式。由于我似乎无法隐藏关闭按钮,因此我试图控制单击此按钮时发生的情况。 objective 是让对话框再次自动打开(从而防止访问它后面的表单,除非输入正确的 PIN),但 WindowListener 似乎不是正确的方法。
pinDialog = new JDialog();
pinDialog.setSize(300, 208);
pinDialog.setModalityType(Dialog.ModalityType.APPLICATION_MODAL);
pinDialog.setVisible(true);
pinDialog.addWindowListener(new WindowAdaptor(){
public void windowClosed(WindowEvent e)
{
//things to open the dialog again here
}
});
此处的最后一条语句 (addWindowListener) 似乎不是 WindowAdaptor 参数的正确类型,但我已经看到许多使用这种确切方法的示例。问题是因为我使用的是 JDialog 而不是完全使用新框架吗?
but WindowListener does not seem to be the correct approach.
您还需要使用:
dialog.setDefaultCloseOperation(JDialog.DO_NOTHING_ON_CLOSE);
当您创建对话框时。然后您可以控制 WindowListener 中的行为。
查看 Closing an Application 了解更多信息。本文适用于框架,但基础知识也适用于对话框。
我正在使用 JDialog window 在显示我的实际应用程序之前显示 "pin entry" window 的形式。由于我似乎无法隐藏关闭按钮,因此我试图控制单击此按钮时发生的情况。 objective 是让对话框再次自动打开(从而防止访问它后面的表单,除非输入正确的 PIN),但 WindowListener 似乎不是正确的方法。
pinDialog = new JDialog();
pinDialog.setSize(300, 208);
pinDialog.setModalityType(Dialog.ModalityType.APPLICATION_MODAL);
pinDialog.setVisible(true);
pinDialog.addWindowListener(new WindowAdaptor(){
public void windowClosed(WindowEvent e)
{
//things to open the dialog again here
}
});
此处的最后一条语句 (addWindowListener) 似乎不是 WindowAdaptor 参数的正确类型,但我已经看到许多使用这种确切方法的示例。问题是因为我使用的是 JDialog 而不是完全使用新框架吗?
but WindowListener does not seem to be the correct approach.
您还需要使用:
dialog.setDefaultCloseOperation(JDialog.DO_NOTHING_ON_CLOSE);
当您创建对话框时。然后您可以控制 WindowListener 中的行为。
查看 Closing an Application 了解更多信息。本文适用于框架,但基础知识也适用于对话框。