我正在使用 aJDialog
获取付款信息,paymentAmount
并由a和 aDate
提交。JTextfield
datechooser.beans.DateChooserCombo
当用户关闭JDialog
或单击时Cancel
,关闭。JDialog
但是当他们单击支付按钮并JDialog
重新出现时,会显示以前提交的输入。
我想JDialog
在它出现时成为默认状态。是否有默认方法可以做到这一点,或者我必须创建自己的重置方法?
当您关闭对话框时,它不会被破坏。它会变得不可见,但它仍然包含关闭时的所有内容。
setVisible()
如果应该再次显示对话框,您可以覆盖该函数并重新初始化它。
@Override
public void setVisible(boolean bVisible)
{
if(bVisible == false)
{
super.setVisible(bVisible);
return;
}
initMyValues();
super.setVisible(bVisible);
return;
}
或者,您可以创建一个WindowListener
,然后您会收到有关窗口各种状态更改的通知。取决于什么更适合您的需求。WindowListener 不需要您创建一个单独的类,只需要覆盖setVisible()
,但您必须添加接口所需的一些额外功能。
另一种解决方法是windowListener
为您的对话框设置一个。
myDialog.addWindowListener(new WindowListener() {
/*Implements over methods here*/
@Override
public void windowClosing(WindowEvent e) {
//set default values here
}});