2011-11-23 67 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。