我有一个登录表单对话框,该对话框显示在开始步骤中,用户必须登录才能继续使用该应用程序。问题是我不知道应用程序应该如何知道登录过程何时完成并继续。我想我应该注册一个WindowListener
并实施该windowClosing
事件。在里面我应该从我的应用程序中调用一个方法来继续这个过程。但我不知道这个解决方案是如何正确的。因为我将登录表单实现为扩展的类,JDialog
应用程序将其实例化为局部变量。因此我认为从类内部调用应用程序的方法是不正确的Login
。我不确定。这只是一种感觉。你有什么建议?
public class Application {
private Login login = null;
public Application() {
login = new Login();
}
public continue() {
//...
}
}
public class Login extends JDialog {
public Login() {
//...
}
public void processLogin() {
}
private class WindowEventHandler implements WindowListener {
public void windowClosing(WindowEvent e) {
if(#LoginProcessSuccessful?) {
// call application's continue method
}
}
}
}