I believe the problem is because your DrawingPanel isn't listening to key events from the JFrame.

BufferedImage megaman = ImageIO.read(new File("C:\\Documents and Settings\\Nemo\\My Documents\\My...