0

我有一个 JFrame,我在其中使用 JDesktopPane 设置内容窗格。

jDesktopPane1 = new JDesktopPane();
setContentPane(jDesktopPane1);

当我添加大小为 300x300 的 JInternalFrame 时,我的 JFrame 是全屏尺寸

Main.getInstance().setSize(Toolkit.getDefaultToolkit().getScreenSize());
c = new Clients();
c.setVisible(true);
setEnabled(true);
Main.getInstance().addInDesktop(c);

在客户中:

this.setPreferredSize(new java.awt.Dimension(300, 300));

在我的 mac osx 上一切正常,如果我在 Windows 机器上使用它,即使我设置了大小或首选大小,jinternalframe 也会采用全屏大小。我能做些什么?这两个操作系统之间有可能发生所有这些变化吗?

这是一个窗口视图

这是一个 MacOsX 视图

4

2 回答 2

2
setPreferredSize(new Dimension(700, 500));
setMaximumSize(new Dimension(700, 500));
setMinimumSize(new Dimension(700, 500));
setMaximizable(true);

为我工作!

于 2016-05-25T20:03:27.457 回答
1

我会参考 Oracle 文档中的InternalFrameDemo。您的程序的设置方式可能与本示例不同,但它肯定会有所帮助。我能够让程序正常工作,并且我有一个 Windows 操作系统。

此外,如果您想参考此示例,请务必在createMethod()之前包含这些代码行。frame.setVisible(true);

// Set your preferred size and location here
frame.setSize(x,y);
frame.setLocation(x,y);
于 2012-01-12T15:27:36.210 回答