import java.awt.Color;
import java.awt.Container;
import java.awt.event.MouseWheelEvent;
import java.awt.event.MouseWheelListener;
import javax.swing.JFrame;
public class MouseWheelTest extends JFrame {
private static final Color colors[] = { Color.BLACK, Color.BLUE,
Color.CYAN, Color.DARK_GRAY, Color.GRAY, Color.GREEN,
Color.LIGHT_GRAY, Color.MAGENTA, Color.ORANGE, Color.PINK,
Color.RED, Color.WHITE, Color.YELLOW };
public MouseWheelTest() {
super();
final Container contentPane = getContentPane();
MouseWheelListener listener = new MouseWheelListener() {
int colorCounter;
private static final int UP = 1;
private static final int DOWN = 2;
public void mouseWheelMoved(MouseWheelEvent e) {
int count = e.getWheelRotation();
int direction = (Math.abs(count) > 0) ? UP : DOWN;
changeBackground(direction);
}
private void changeBackground(int direction) {
contentPane.setBackground(colors[colorCounter]);
if (direction == UP) {
colorCounter++;
} else {
--colorCounter;
}
if (colorCounter == colors.length) {
colorCounter = 0;
} else if (colorCounter < 0) {
colorCounter = colors.length - 1;
}
}
};
contentPane.addMouseWheelListener(listener);
}
public static void main(String args[]) {
JFrame frame = new MouseWheelTest();
frame.setSize(300, 300);
frame.show();
}
}