我正在开发一个带有主面板的Java应用程序,其中我添加了一个JDesktopPane
。 用户点击JButton
,将显示一个JInternalFrame
。我的问题是,如果我使用Mac OSx的外观和感觉,JDesktopPane
显示正确的尺寸JInternalFrame
,如果我使用其他外观和感觉,它将在屏幕的维度中显示JInternalFrame
。这是我做的:如何设置JDesktopPane大小
在主JPanel
:
jDesktopPane1 = new JDesktopPane();
setContentPane(jDesktopPane1);
当用户点击JButton(s)
:
public void addInDesktop(JInternalFrame frame){
frame.setVisible(true);
try {
jDesktopPane1.setSize(frame.getSize());
jDesktopPane1.setPreferredSize((frame.getSize()));
System.out.println(frame.getSize().toString());
System.out.println(jDesktopPane1.getSize().toString());
jDesktopPane1.add(frame);
frame.moveToFront();
frame.setSelected(true);
} catch (PropertyVetoException e) {
e.printStackTrace();
}
}
的System.out.println
说我说的JDesktopPane和JInternalFrame的的尺寸是一样的,但为什么它显示全屏幕的JInternalFrame?