import java.applet.*;
import java.awt.*;
import java.awt.event.*;

public class focusApplet extends Applet
	implements KeyListener, FocusListener {

	// boolean array for key-down/etc.
	// reason is that keypresses repeat if held down - unwanted!
	boolean[] keys = new boolean[256];

	String s = "";

	public void init() {
		setBackground( Color.black );

		addKeyListener( this );
		addFocusListener( this );
	}

	public void keyPressed( KeyEvent e ) {
		if (!keys[e.getKeyCode()]) {
			s = s+"KEYPRESS "+e.getKeyCode();
			keys[e.getKeyCode()] = true;

			repaint();
			e.consume();
		}
	}
	public void keyReleased( KeyEvent e ) {
		s = "KEYRELEASE "+e.getKeyCode();
		keys[e.getKeyCode()] = false;

		repaint();
		e.consume();
	}

	public void keyTyped( KeyEvent e ) {
	}

	public void focusGained(FocusEvent e) {
		s = "Focus Gained";
		repaint();
	}

	public void focusLost(FocusEvent e) {
		s = "Focus Lost";
		repaint();
	}

	public void paint( Graphics g ) {
		g.setColor( Color.white );
		g.drawString( s, 24, 24 );
	}
}
