2012-01-12 182 views
0

我有一個JFrame,其中我使用JDesktopPane設置內容窗格。如何設置JInternalFrame的大小

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

我的JFrame是全屏幕尺寸,當我與大小300×300

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

添加的JInternalFrame在客戶端中:

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

在我的Mac OSX一切工作正常,如果我使用它在Windows機器上,即使我設置大小或首選大小,jinternalframe也會佔用全屏大小。我能做什麼?這兩種操作系統之間的所有變化都可能發生?

This is a windows view

This is a MacOsX view

+0

爲了更好地提供幫助,請發佈[SSCCE](http://sscce.org/)。 – 2012-01-12 11:01:24

+0

這裏是一個例子 – JackTurky 2012-01-12 11:12:58

+0

沒有人?請幫幫我 ! – JackTurky 2012-01-12 11:25:51

回答

1

我要提到的InternalFrameDemo在Oracle的文檔。您的程序可能不會像本示例那樣設置,但它肯定會有所幫助。我能夠讓程序正常工作,並且我有一個Windows操作系統。

而且,可以肯定的,如果你要引用這個例子frame.setVisible(true);之前,包括代碼createMethod()這些行。

// Set your preferred size and location here 
frame.setSize(x,y); 
frame.setLocation(x,y); 
2
setPreferredSize(new Dimension(700, 500)); 
setMaximumSize(new Dimension(700, 500)); 
setMinimumSize(new Dimension(700, 500)); 
setMaximizable(true); 

爲我工作!