マイスイングアプリケーションの1つのパネルに6ボタンがあります。カーソルがボタン上に移動すると、デフォルトのカーソルを手のカーソルに変更し、カーソルが終了してからデフォルトのカーソルを変更したいと思います。今私は以下のコードを使ってこのことをやっています。スイングアプリケーションでマウスポインタコンポーネントを取得する方法
private void btnRegisterReceiptMouseEntered(java.awt.event.MouseEvent evt) {
btnRegisterReceipt.setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR));
}
private void btnRegisterReceiptMouseExited(java.awt.event.MouseEvent evt) {
btnRegisterReceipt.setCursor(Cursor.getPredefinedCursor(Cursor.DEFAULT_CURSOR));
}
ここで、このコードをそれぞれのボタンに書きたいと思います。
しかし、私はこれを行うための一般的な方法を書いてください。私はすでにこのことをMouseListenerを使用しようとしていますが、私はマウスポイントのコンポーネントを取得できません。
私はそれが可能かどうかわかりません。可能であれば、誰も私にこのことをする方法を教えてください。
private void changeCursor() {
addMouseListener(new MouseAdapter() {
@Override
public void mouseEntered(MouseEvent e) {
/*if (mouse Entered compornent is button) {
button.setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR));
} else {
button.setCursor(Cursor.getPredefinedCursor(Cursor.DEFAULT_CURSOR));
}*/
}
});
}
+1 - ありがとうございました。それは仕事です。 e.getComponent()。setCursor(Cursor.getPredefinedCursor(Cursor .HAND_CURSOR)); –