限制用户访问父窗口而不关闭Child 1

时间:2013-05-23 05:31:14

标签: java swing jframe

我有一个JFrame是父级的。使用父JFrame中的一个按钮,打开作为子窗口的新JFrame。

如何在不关闭Child 1的情况下限制用户访问父窗口?

我不能使用JDialog作为对JFrame的依赖。

1 个答案:

答案 0 :(得分:2)

您要找的是Modality in Dialogs

引用:

  
      
  • “模态”对话框 - 一个对话框,用于阻止对应用程序中某些其他顶级窗口的输入,但使用对话框作为其所有者创建的窗口除外。模态对话框捕获窗口焦点,直到它关闭,通常是按下按钮。

  •   
  • 无模式对话框 - 一个对话框,可让您在显示此对话框时与其他窗口一起操作。

  •   

另请查看JDialog#setModalityType()Dialog.ModalityType。这些将允许您设置对话框的模态类型。

可用的类型是:

  • APPLICATION_MODAL :APPLICATION_MODAL对话框阻止来自同一Java应用程序的所有顶级窗口,但来自其子级的窗口除外 层次结构。
  • DOCUMENT_MODAL :DOCUMENT_MODAL对话框阻止来自同一文档的所有顶级窗口的输入,但来自其子级的窗口除外 层次结构。
  • MODELESS :MODELESS对话框不会阻止任何顶级窗口。
  • TOOLKIT_MODAL :TOOLKIT_MODAL对话框阻止从同一工具包运行的所有顶级窗口,但来自其子层次结构的窗口除外。