2011-11-23 79 views
1

嘿,我是netbeans的新手,我注意到很多應用程序(來自教科書)的控件(按鈕等)具有默認樣式/外觀,如下所示。更改netbeans GUI控件的默認外觀

Valid XHTML http://iforce.co.nz/i/c0boe3dp.hmu.png

我創建GUI時的外觀只是標準的Windows XP或7按鈕樣式。有沒有辦法將它改變爲上圖中顯示的樣式?

這是我目前得到的外觀:

Valid XHTML http://iforce.co.nz/i/5o40tr5c.vyh.jpg

在此先感謝。

+0

默認情況下,它只會顯示這種外觀。 – gprathour

+0

默認情況下,按鈕看起來不同:/ netbeans中有一個選項可以改變它嗎? – Ari

+0

你可以請說明它是如何尋找你的?如果可能的話,代碼如何創建你的框架。 – gprathour

回答

3

是的,你可以給下面的代碼搖擺如windows的look and feel

try{ 
    UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel"); 
} 
catch(Exception e){ 
     System.out.println("UIManager Exception : "+e); 
} 
+1

這不適用於Mac或* nix,請使用['UIManager.getSystemLookAndFeelClassName()'](http://docs.oracle.com/javase/7/docs/api/javax/swing/UIManager.html#getSystemLookAndFeelClassName %28%29)。 –

+0

這僅適用於Windows。 :) – gprathour

+0

你似乎錯過了這一點。它是否可以使用Windows的其他JRE?當Oracle決定將類名改爲'com.oracle.java.swing.plaf.windows.WindowsLookAndFeel'時它會起作用嗎? ***不要使用神奇數字!*** –

0

您可以添加Look and Feels。有一些可以自由下載的免費外觀。如果你只想要Windows的外觀和感覺,你可以只添加

try{ 
    UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel"); 
} 
catch(Exception e){ 
     e.printStacktrace(); 
} 

希望這回答你的問題。

+0

這不適用於Mac或* nix,請使用['UIManager.getSystemLookAndFeelClassName()'](http://docs.oracle.com/javase/7/docs/api/javax/swing/UIManager.html #getSystemLookAndFeelClassName%28%29)。 –

+0

而我在這裏。請注意,'e.printStacktrace()'類型更短,並且比'System.out.println(e.toString())'更具信息性。 –

+0

@Andrew是的,謝謝 – Krishan

2

NetBeans將根據您的JDK和操作系統自動選擇外觀。 NB生成了一些代碼,用於在創建使所有內容看起來像Windows組件的JFrame時設置L & F.如果您想更改L & F,請查看JFrame的源代碼,並查找一段代碼爲「外觀和感覺設置代碼」的摺疊代碼。如果將其展開,則可以隨意更改,甚至將其刪除,這會使其僅使用圖片中默認的L(「金屬」)。請記住,你真的不應該只是刪除生成的代碼,但我只是想在這裏說明一個觀點。如果您一般對swing不熟悉,我建議您手動編寫一些應用程序,並且默認情況下應該只使用「金屬」L & F.這將使您能夠與swing.一起工作,獲得更多信息,請致電here

2

有關提供包含可用PLAF的組合的代碼,請參閱nested layout example,並允許用戶在運行時更改PLAF。