java 在a窗口上弹出了b窗口 怎么彻底关闭a窗口 让b窗口变成主要窗口 也就只有b一个窗口 (要彻底关闭)?

要彻底关闭

如果a是主窗口,明确告诉你不能这么做。因为主窗口是进程的承载者,关掉主窗口就关掉了进程。但是可以用如下的方式设计程序实现你的需求:
1、隐藏a窗口
在弹出b窗口后隐藏a窗口,并将a的句柄存在b里,在b的close里加上a.close(),就实现了b关闭同时离开进程的功能。
2、a和b都不是主窗口
整个程序运行在一个main函数里,先new出a窗口,在a窗口上执行若干操作,弹出b(注意,此时main函数里能获取到b句柄),然后关掉a。那么此时程序里就只有一个b窗口了。
这个设计常用于:打开登录窗口->进入主窗口-->关闭登录窗口追问

对对对 我就是做登录程序 b弹出后 a要什么代码才能关闭它?

追答

我不是写了吗,在main函数里创建两个窗口,a登录,b主窗口,监控a窗口的关闭事件,如果a关闭时返回了登录成功,再弹出b;如果没有成功,就不弹出b

温馨提示:答案为网友推荐,仅供参考
相似回答