Java 使jDialog显示在主窗口前端却又不干扰其他程序的窗口且不影响主窗口获取焦点

一般我们创建的JDialog在主窗口获得焦点时会被遮挡 如下图所示

  

 

 这是我们在JDialog的构造方法加上this.setAlwaysOnTop(true); 就可以将JDialog一直置顶了,但是这样

会让JDialog在所有窗户的最顶层,影响其他程序的窗口    如下图所示

 

如果想要置顶主窗口却不影响其他窗口怎么办呢?  很简单在JDialog的构造方法加上this.setModal(true); (记得把前面说的代码注释掉)就行了

如下图所示

但是这样不关闭JDialog对话框就无法获取主程序的焦点,干扰了主窗口。

那怎么办呢?别担心只要在JDialog的构造方法加上super(father,false);(记得把前面说的代码注释掉)就行了  

 

 这样JDialog对话框既不会干扰其他程序窗口也不会影响主窗口地置顶主窗口了  见下图

 
posted @ 2021-03-16 19:52  乘舟凉  阅读(959)  评论(0编辑  收藏  举报