コンポーネントにマウスが入ったときに、マウスカーソルの形を変える方法(JDK 1.4.1)

・ソース

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

/**
 * マウスカーソルを変えるテスト
 */
public class MouseCursor {
    /**
     * main メソッド
     * @param args コマンドラインからの引数
     */
    public static void main(String[] args) {
        MouseCursorFrame frame = new MouseCursorFrame();
        frame.setSize(100, 100);
        frame.addWindowListener(new WindowAdapter(){
            public void windowClosing(WindowEvent e){
                System.exit(0);
            }
        });
        frame.setVisible(true);
    }
}


/**
 * フレーム
 */
class MouseCursorFrame extends Frame {
    /** ボタン */
    private Button button;
    /** 普通のカーソル */
    private Cursor normalCursor = Cursor.getDefaultCursor();
    /** 手の形のカーソル */
    private Cursor jumpCursor = new Cursor(Cursor.HAND_CURSOR);
    /** マウスアダプタ */
    private MouseAdapter mouseAdapter = new MouseAdapter() {
        /**
         * コンポーネントにマウスが入ると呼び出されます
         */
        public void mouseEntered(MouseEvent e) {
            // カーソルを手の形にします
            setCursor(jumpCursor);
        }
        /**
         * コンポーネントからマウスが出ると呼び出されます
         */
        public void mouseExited(MouseEvent e) {
            // カーソルを普通の形にします
            setCursor(normalCursor);
        }
    };

    /**
     * コンストラクタ
     */
    public MouseCursorFrame() {
        setLayout(new FlowLayout());
        // ボタンにマウスアダプタをつけて表示します
        button = new Button("Test Button");
        button.addMouseListener(mouseAdapter);
        add(button);
    }
}


・実行結果

ボタン上にマウスが入るとカーソルの形が変わります。