Sun 認為 Windows 經典外觀已過時,Motif 更無人使用。J2SE 1.4.2 引入全新 Windows XP 外觀與 GTK+ 外觀,讓 Java 應用在對應平台上呈現原生視覺體驗。Swing 可插拔外觀架構允許在不修改元件建立代碼的情況下,透過替換 LookAndFeel 統一改變所有元件字型、風格。
使用 UIManager.setLookAndFeel() 設定外觀類別名稱。無需記憶具體類名,可透過:
UIManager.getCrossPlatformLookAndFeelClassName() 取得跨平台 Metal UI 類名UIManager.getSystemLookAndFeelClassName() 取得當前平台原生 UI 類名(Windows 上為 com.sun.java.swing.plaf.windows.WindowsLookAndFeel,UNIX 上為 Motif/CDE)範例程式碼:
import java.awt.*;
import javax.swing.*;
public class Start extends JFrame {
public Start() {
setDefaultCloseOperation(EXIT_ON_CLOSE);
Container c = getContentPane();
JButton button = new JButton("Hello");
c.add(button, BorderLayout.CENTER);
setSize(100, 50);
setVisible(true);
}
public static void main(String[] args) {
try {
UIManager.setLookAndFeel(UIManager.getCrossPlatformLookAndFeelClassName());
// UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
} catch (Exception e) {}
new Start();
}
}
圖 1 顯示在 Windows 2000 上運行時的跨平台 UI 外觀:

新版本提供 GTK+ 外觀,但尚未將其作為 UNIX 系統的預設系統外觀,此改進將在 J2SE 1.5 中完成。