Java - 禁用 JLayeredPane 的 DEFAULT_LAYER

标签 java swing modal-dialog jlayeredpane

我有一个 JLayeredPane,其中我的 MODAL_LAYER 整齐地覆盖了所有内容,而且总体来说一切进展顺利。

但是汤里有一只苍蝇 - 下面的层仍然具有功能,尽管它们在视觉上被 MODAL_LAYER 隐藏了。

是否有一种巧妙的方法来“关闭”较低层,或将所有功能传递给MODAL_LAYER,或类似的方法?

似乎是一个简单的问题,也许我正在经历这样的时刻之一。

编辑

可能会拒绝对任何下面的层进行聚焦,类似于 JDialog,除了与对话框直接交互之外,不允许发生任何事情?

最佳答案

您可以使用玻璃 Pane 并拦截不会进入模态层组件的事件。请参阅http://docs.oracle.com/javase/tutorial/uiswing/components/rootpane.html

关于Java - 禁用 JLayeredPane 的 DEFAULT_LAYER,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8211441/

相关文章:

javascript - 如何在 Ant Design Modal Component Body 旁边启用滚动条?

java - wsimport 在将 wsdl 解析为 java 时抛出与包相关的错误

Eclipse 中的javac?

Java Play 框架全局变量

java - 从另一个 java 文件追加 java 中的文本区域

jquery - Bootstrap 模式在 4 秒或用户单击后关闭

JavaFX TitledPane 内容在折叠后消失

java - jzy3d 更改颜色映射

java - 在 .form 项目中使用 .java 类中的方法

javascript - 单击时,只有父 div 而不是子 div