What is JTattoo?

JTattoo consists of several different Look and Feels for Swing applications. All of them enables developers to improve their application with an excellent user interface. So JTattoo opens desktop applications the door to end users who are unfortunate with the Look and Feels shipped with the standard JDK.
 
How to change the look of your application.//如何应用皮肤到自己的 Swing  applications
 
The following short code fragment shows you the way how to switch the Look and Feel in your application. Be sure that the JTattoo.jar is in the java classpath, if you want to run this demo. The easiest way is to copy the JTattoo.jar file into the (java_home)/jre/lib/ext folder.
//实例代码
package com.jtattoo.demo.app;

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class MinFrame extends JFrame {

    public MinFrame() {
        super( "Minimal-Frame-Application");
       
        // setup menu
        JMenuBar menuBar = new JMenuBar();
        JMenu menu = new JMenu( "File");
        menu.setMnemonic( "F");
        JMenuItem menuItem = new JMenuItem( "Exit");
        menuItem.setMnemonic( "x");
        menuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_F4, KeyEvent.ALT_MASK));
        menuItem.addActionListener( new ActionListener() {
            public void actionPerformed(ActionEvent event) {
                System.exit( 0); } }); menu.add(menuItem); menuBar.add(menu); setJMenuBar(menuBar); // setup widgets
        JPanel contentPanel = new JPanel( new BorderLayout());
        contentPanel.setBorder(BorderFactory.createEmptyBorder( 0, 4, 4, 4));
        JScrollPane westPanel = new JScrollPane( new JTree());
        JEditorPane editor = new JEditorPane( "text/plain", "Hello World");
        JScrollPane eastPanel = new JScrollPane(editor);
        JSplitPane splitPane = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT, true, westPanel,eastPanel);
        splitPane.setDividerLocation( 148);
        contentPanel.add(splitPane, BorderLayout.CENTER);
        setContentPane(contentPanel);
       
        // add listeners
        addWindowListener( new WindowAdapter() {
            public void windowClosing(WindowEvent e) {
                System.exit( 0);
            }
        });
       
        // show application
        setLocation( 32, 32);
        setSize( 400, 300);
        show();
    } // end CTor MinFrame
   
    public static void main(String[] args) {
        try {
            // select Look and Feel
            UIManager.setLookAndFeel( "com.jtattoo.plaf.smart.SmartLookAndFeel");
            // start application
            new MinFrame();
        }
        catch (Exception ex) {
            ex.printStackTrace();
        }
    } // end main
   
} // end class MinFrame