如何在 Swing 中获取 JWindow 的父容器?

How to get the parent container of a JWindow in Swing?

我有一个 JFrame 并在初始化时从该帧调用 JDialog。在对话框中有一个 JButton,单击该按钮时会打开一个新的 JWindow

我可以固定window在主框架中的位置吗?如何从 JWindow extended class 访问父容器(JFrame extended)?

使用 SwingUtilities.getWindowAncestor,如果在 JWindow class 内,则将其称为 this,如果不在,则只需将对象放入:

JFrame topFrame = (JFrame) SwingUtilities.getWindowAncestor(this);

JFrame topFrame = (JFrame) SwingUtilities.getWindowAncestor(myJWindow);