Java GUI:不用JDialog实现窗口跳转后无法操作原窗口

最近在写一个java窗体程序,有多个窗口跳转,需求是窗口跳转后不能再操作原窗口。请教朋友后,知道可以用JDialog来实现,JDialog就是让跳转之后的窗口变成对话框,实质上已经不是JFrame了。
那么,如何不利用JDialog来实现这个需求呢?
其实,在JFrame中有这么一个方法,叫setEnable(boolean b),这个方法是从java.awt.Component类中继承过来的,内容如下
Java GUI:不用JDialog实现窗口跳转后无法操作原窗口_第1张图片

可以看到这个方法的作用是根据传入的b值来启用或禁用组件。所以,用这个方法,我们就可以实现我们的需求了。
接下来,开始操作
先在原始窗口中的按钮添加监听,实现跳转新窗口,并把原始窗口的对象传给新窗口,这样才能在新窗口关闭的时候把原窗口启用
Java GUI:不用JDialog实现窗口跳转后无法操作原窗口_第2张图片
然后在新窗口添加窗口关闭的监听事件,当新窗口关闭时,将原窗口从禁用状态改成启用状态
Java GUI:不用JDialog实现窗口跳转后无法操作原窗口_第3张图片
到这里就结束了,亲测可以实现需求。如果能够帮到你,我很开心。
编程的路很长,我在路上。。。。

2017/8/2 16:28
Lucifer

你可能感兴趣的:(记录)