我有一个主要JFrame
,它链接到另一个JFrame
, 假设主帧M
子帧,子帧C
,当我单击M
时,JFrame
C
成功打开,在这里我添加了setAlwaysOnTop(true)
方法C
JFrame
。好每件事都很好。
但是当我的C
JFrame在顶部时,我不希望我的M
JFrame
操作起作用C
除非关闭JFrame。
这似乎是一个有点尴尬和愚蠢的问题。 但请回答
从您的描述来看,在我看来,您想要一个模态对话框。
您的C
基本上是JDialog,您可以将其设置为Dialog.ModalityType.APPLICATION_MODAL
:
JFrame m = new JFrame(...);
JDialog c = new JDialog(m, "", Dialog.ModalityType.APPLICATION_MODAL );
在此处阅读有关模式对话框的更多信息:
- https://docs.oracle.com/javase/tutorial/uiswing/misc/modality.html
- 如何在 Swing java 中制作 JFrame 模态