1

我有一个 JFrame,它还有 4 个 JInternalFrames。从 JFrame 我有打开任何这些 JInternalFrames 的链接。我只是想问一下,如果我以最大化模式打开 JFrame,那么所有其他内部框架也将以最大化模式打开。类似地,如果 JFrame 没有处于最大化模式,那么其他人也不应该以最大化模式打开。

感谢您抽出时间。

我使用了 setMaximum() 但现在我面临另一个问题。如果我连续打开内部框架,那么它们都将以最大化模式打开,这很好,因为我的 JFrame 也处于最大化模式。但是一旦我关闭最新打开的框架,它们都将处于默认大小而不是最大化模式。

这里的问题是,在此之后,当我单击任何内部框架时,它们将变得最大化。如果我单击恢复按钮,然后再次单击其他内部框架,它们都将以默认大小而不是最大化模式打开,即如果我单击最大化按钮,然后单击它们以最大化模式打开的其他内部框架,如果我单击恢复按钮,它们将以默认大小打开。

// 当内部框架第一次打开时

if (isNewEditor)

{

((GenericEditor)editorFrame).setQFTestName(((JInternalFrame)editorObject).getTitle());
                editorFrame.setSize(defaultWidth, defaultHeight);
                editorFrame.setVisible(true);
                addFrameToDesktop(editorFrame); // adding to JDesktopPane
              editorFrame.setMaximum(true);
              editorFrame.setSelected(true);
              editorFrame.moveToFront();
}
4

1 回答 1

0

JInternalFrame 有一个setMaximum(...)方法。JFrame 有一个getExtendedState()方法。

创建和显示内部框架时,您可以查询框架的状态并根据需要将内部框架设置为最大值。

于 2013-09-30T14:42:40.243 回答