Perchè non riesco a far muovere la pallina premendo i tasti direzionali? Spero che qualcuno mi aiuti

codice:
import java.awt.Point;
import java.awt.Graphics;
import java.awt.Color;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import javax.swing.JPanel;
import javax.swing.JFrame;

public class PacmanDF extends JPanel
{
	private Point pacman;
	
	public PacmanDF()
	{
		pacman = new Point (10, 20);
		
		addKeyListener (new PacmanDFHandler());
	}
	
	private class PacmanDFHandler extends KeyAdapter
	{
		public void keyPressed (KeyEvent event)
		{
			switch (event.getKeyCode())
			{
				case KeyEvent.VK_RIGHT:
					pacman.x++;
					break;
					
				case KeyEvent.VK_LEFT:
					pacman.x--;
					break;
					
				case KeyEvent.VK_UP:
					pacman.y--;
					break;
					
				case KeyEvent.VK_DOWN:
					pacman.y++;
			}
			repaint();
		}
	}
	
	public void paintComponent (Graphics g)
	{
		super.paintComponent(g);
		
		g.setColor (Color.YELLOW);
		g.fillOval (pacman.x, pacman.y, 20, 20);
	}
	
	public static void main (String[] args)
	{
		PacmanDF panel = new PacmanDF();
		panel.setBackground (Color.BLACK);
		
		JFrame frame = new JFrame ("Pacman DF");
		frame.setSize (640, 480);
		frame.setLocationRelativeTo (null);
		frame.setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE);
		
		frame.add(panel);
		
		frame.setVisible (true);
	}
}