我定义了两个类,两个类各需要打开一个窗口,其中一个是用户登陆窗口,另一个是主窗口.当我运行主窗口所在的类文件(称为类A)时,调用登陆窗口所在的类(称为
类B)从而首先打开登陆的窗口,当用户名确认以后,在类B中创建一个类A的对象,进入
主界面(由类A产生的窗口),但当类A的窗口被启动后,两个窗口就完全冲突了,完全进入死锁状态.请问我该如何在启动A的窗口之前把B窗口关掉,让B类结束运行,请各位高手指教!

解决方案 »

  1.   

    我定义了一个类两个类,两个类各需要打开一个窗口,其中一个是用户登陆窗口,另一个是主窗口.当我运行主窗口所在的类文件(称为类A)时,调用登陆窗口所在的类(称为
    类B)从而首先打开登陆的窗口,当用户名确认以后,在类B中创建一个类A的对象,进入
    主界面(由类A产生的窗口),但当类A的窗口被启动后,两个窗口就完全冲突了,完全进入死锁状态.请问我该如何在启动A的窗口之前把B窗口关掉,让B类结束运行,请各位高手指教!
      

  2.   

    应该更正为:我定义了两个类,两个类各需要打开一个窗口,其中一个是用户登陆窗口,另一个是主窗口.当我运行主窗口所在的类文件(称为类A)时,调用登陆窗口所在的类(称为类B)从而首先打开登陆的窗口,当用户名确认以后,在类B中创建一个类A的对象,进入主界面(由类A产生的窗口),但当类A的窗口被启动后,两个窗口就完全冲突了,完全进入死锁状态.请问我该如何在启动A的窗口之前把B窗口关掉,让B类结束运行,请各位高手指教!
      

  3.   

    如果登陆窗口是模式对话框并设置其父窗口是主窗口,则很容易:在登陆窗口的确定按钮按下后dispose()程序即可继续运行了。如果不是模式对话框,可以在构造登陆对话框时传一个接口进去,电机确定时回调即可。