使用系統 LF

Swing 支援相當多的原生 L&F。
你可以隨時輕鬆安裝一個而無需呼叫特定的 L&F 類:

public class SystemLookAndFeel
{
    public static void main ( final String[] args )
    {
        // L&F installation should be performed within EDT (Event Dispatch Thread)
        // This is important to avoid any UI issues, exceptions or even deadlocks
        SwingUtilities.invokeLater ( new Runnable ()
        {
            @Override
            public void run ()
            {
                // Process of L&F installation might throw multiple exceptions
                // It is always up to you whether to handle or ignore them
                // In most common cases you would never encounter any of those
                try
                {
                    // Installing native L&F as a current application L&F
                    // We do not know what exactly L&F class is, it is provided by the UIManager
                    UIManager.setLookAndFeel ( UIManager.getSystemLookAndFeelClassName () );
                }
                catch ( final ClassNotFoundException e )
                {
                    // L&F class was not found
                    e.printStackTrace ();
                }
                catch ( final InstantiationException e )
                {
                    // Exception while instantiating L&F class
                    e.printStackTrace ();
                }
                catch ( final IllegalAccessException e )
                {
                    // Class or initializer isn't accessible
                    e.printStackTrace ();
                }
                catch ( final UnsupportedLookAndFeelException e )
                {
                    // L&F is not supported on the current system
                    e.printStackTrace ();
                }

                // Now we can create some natively-looking UI
                // This is just a small sample frame with a single button on it
                final JFrame frame = new JFrame ();
                final JPanel content = new JPanel ( new FlowLayout () );
                content.setBorder ( BorderFactory.createEmptyBorder ( 50, 50, 50, 50 ) );
                content.add ( new JButton ( "Native-looking button" ) );
                frame.setContentPane ( content );
                frame.setDefaultCloseOperation ( WindowConstants.EXIT_ON_CLOSE );
                frame.pack ();
                frame.setLocationRelativeTo ( null );
                frame.setVisible ( true );
            }
        } );
    }
}

這些是本地 L&Fs JDK 支援(OS - > L&F):

OS L&F 名稱 L&F 班
Solaris,Linux 和 GTK + GTK + com.sun.java.swing.plaf.gtk.GTKLookAndFeel
其他 Solaris,Linux 主題 com.sun.java.swing.plaf.motif.MotifLookAndFeel
經典 Windows 視窗 com.sun.java.swing.plaf.windows.WindowsLookAndFeel
Windows XP Windows XP com.sun.java.swing.plaf.windows.WindowsLookAndFeel
Windows Vista Windows Vista com.sun.java.swing.plaf.windows.WindowsLookAndFeel
蘋果 蘋果 com.apple.laf.AquaLookAndFeel *
IBM UNIX IBM javax.swing.plaf.synth.SynthLookAndFeel *
HP UX 生命值 javax.swing.plaf.synth.SynthLookAndFeel *

*這些 L&F 由系統供應商提供,實際的 L&F 類名稱可能會有所不同