import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import javax.swing.JFrame;

/**
 * Example program to test reading arrow keys
 * from the keyboard.
 * 
 * @author Dave Matuszek
 * @version Dec 3, 2009
 */
public class Keystrokes extends JFrame {

    /**
     * @param args
     */
    public static void main(String[] args) {
        new Keystrokes().run();
    }

    private void run() {
        this.addKeyListener(new KeyAdapter() {
            @Override
            public void keyPressed(KeyEvent arg0) {
                handleKeystroke(arg0.getKeyCode());
            }
        });
        pack();
        setSize(200, 200);
        setVisible(true);
    }

    protected void handleKeystroke(int keyCode) {
        switch (keyCode) {
            case KeyEvent.VK_LEFT:
                System.out.println("left");
                break;
            case KeyEvent.VK_RIGHT:
                System.out.println("right");
                break;
            case KeyEvent.VK_UP:
                System.out.println("up");
                break;
            case KeyEvent.VK_DOWN:
                System.out.println("down");
                break;
            case 'Q':
            case 'q':
                System.exit(0);
            default:
                System.out.println(" Key was " + keyCode);
        }
    }
}
