import java.awt.*; import java.awt.image.*; import java.applet.Applet; import java.awt.AWTEvent; // enableEvents import java.awt.event.KeyEvent; // Keys public class k extends Applet implements Runnable{ boolean keys[]=new boolean[67111]; public void start() { new Thread(this).start(); } public void run(){ final BufferedImage screen = new BufferedImage(800, 600, BufferedImage.TYPE_INT_RGB); final Graphics g = screen.getGraphics(); long t_; int counter=0; enableEvents(AWTEvent.KEY_EVENT_MASK); int x=100; int y=100; int pcounter=0; int oldy=0; int oldx=0; setVisible(true); requestFocus(); while(true){ g.setColor(new Color(0,0,0)); g.fillRect(0,0,800,600); g.setColor(new Color(255,255,255)); g.drawString(""+(counter++), 300,300); if(keys[KeyEvent.VK_LEFT]) { if(x>0)x--; } if(keys[KeyEvent.VK_RIGHT]) { if(x<800)x++; } if(keys[KeyEvent.VK_DOWN]){ if(y<600)y++; } if(keys[KeyEvent.VK_UP]){ if(y> 0)y--; } if(x!=oldx || y!=oldy){ if(pcounter++>3)pcounter=0; //g.drawImage(player[pcounter],x,y); oldx=x;oldy=y; } g.drawString("*", x, y); // Reset keys for(int i=0; i < 65536; i++)keys[i]=false; try{ Thread.sleep(60); }catch(Exception e){} getGraphics().drawImage(screen,0,0,this); } } // test using handleEvent protected void processKeyEvent(KeyEvent e) { if (e.getID() == java.awt.Event.KEY_RELEASE) { keys[e.getKeyCode()] = true; } } }