java UIManager的风格【Z】

Java'中的几种Look and Feel
1、Metal风格 (默认)
String lookAndFeel = "javax.swing.plaf.metal.MetalLookAndFeel";
UIManager.setLookAndFeel(lookAndFeel);
2、Windows风格
String lookAndFeel = "com.sun.java.swing.plaf.windows.WindowsLookAndFeel";
UIManager.setLookAndFeel(lookAndFeel);
3、Windows Classic风格
String lookAndFeel = "com.sun.java.swing.plaf.windows.WindowsClassicLookAndFeel";
UIManager.setLookAndFeel(lookAndFeel);
4、Motif风格
String lookAndFeel = "com.sun.java.swing.plaf.motif.MotifLookAndFeel";
UIManager.setLookAndFeel(lookAndFeel);
5、Mac风格 (需要在相关的操作系统上方可实现)
String lookAndFeel = "com.sun.java.swing.plaf.mac.MacLookAndFeel";
UIManager.setLookAndFeel(lookAndFeel);
6、GTK风格 (需要在相关的操作系统上方可实现)
String lookAndFeel = "com.sun.java.swing.plaf.gtk.GTKLookAndFeel";
UIManager.setLookAndFeel(lookAndFeel);
7、可跨平台的默认风格
String lookAndFeel = UIManager.getCrossPlatformLookAndFeelClassName();
UIManager.setLookAndFeel(lookAndFeel);
8、当前系统的风格
String lookAndFeel = UIManager.getSystemLookAndFeelClassName();
UIManager.setLookAndFeel(lookAndFeel);

在Java中让用户能够动态地更改应用的外观,可以给用户更好地体验,具体的实现方式是:
1,先使用UIManager.setLookAndFeel(String s)方法设定对应的外观
2,再使用SwingUtilities.updateComponentTreeUI(Component c)方法立刻更新应用的外观
这两个类均在javax.swing包中

Java代码
  1. public   void  actionPerformed(ActionEvent e) {  
  2. String lnfName = null ;  
  3. if  (e.getActionCommand().equals( "Metal" )) {  
  4.     lnfName = "javax.swing.plaf.metal.MetalLookAndFeel" ;  
  5.  } else   if  (e.getActionCommand().equals( "Motif" )) {  
  6.    lnfName = "com.sun.java.swing.plaf.motif.MotifLookAndFeel" ;  
  7. else  {  
  8.     lnfName = "com.sun.java.swing.plaf.windows.WindowsLookAndFeel" ;  
  9. }  
  10. try  {  
  11.     UIManager.setLookAndFeel(lnfName);  
  12.     SwingUtilities.updateComponentTreeUI(frame);  
  13. catch  (UnsupportedLookAndFeelException ex1) {  
  14.     System.err.println("Unsupported LookAndFeel: "  + lnfName);  
  15. catch  (ClassNotFoundException ex2) {  
  16.     System.err.println("LookAndFeel class not found: "  + lnfName);  
  17. catch  (InstantiationException ex3) {  
  18.     System.err.println("Could not load LookAndFeel: "  + );  
  19. catch  (IllegalAccessException ex4) {  
  20.     System.err.println("Cannot use LookAndFeel: "  + lnfName);  
  21. }  
  22. }  
public void actionPerformed(ActionEvent e) {
String lnfName = null;
if (e.getActionCommand().equals("Metal")) {
    lnfName = "javax.swing.plaf.metal.MetalLookAndFeel";
 } else if (e.getActionCommand().equals("Motif")) {
   lnfName = "com.sun.java.swing.plaf.motif.MotifLookAndFeel";
} else {
    lnfName = "com.sun.java.swing.plaf.windows.WindowsLookAndFeel";
}
try {
    UIManager.setLookAndFeel(lnfName);
    SwingUtilities.updateComponentTreeUI(frame);
} catch (UnsupportedLookAndFeelException ex1) {
    System.err.println("Unsupported LookAndFeel: " + lnfName);
} catch (ClassNotFoundException ex2) {
    System.err.println("LookAndFeel class not found: " + lnfName);
} catch (InstantiationException ex3) {
    System.err.println("Could not load LookAndFeel: " + );
} catch (IllegalAccessException ex4) {
    System.err.println("Cannot use LookAndFeel: " + lnfName);
}
}



以上原文地址:http://www.cnblogs.com/xxpal/articles/1232472.html

提供几个漂亮的swing外观
http://fifesoft.com/officelnfs/
https://pgslookandfeel.dev.java.net/
http://personales.ya.com/nimrod/index-en.html

你可能感兴趣的:(java,windows,.net,swing,sun)