Java KeyListener

Java KeyListener:

We can use the Eclipse IDE for this example. If you do not know about it then follow this link- How to Install Eclipse For Java and create a program in it.

Java KeyListener listens for key events. They are represented by objects implementing the KeyListener interface (located in the java.awt.event package). KeyListener specifies three methods that must be implemented by a KeyListener’s class. These methods have the following signatures.

  • public abstract void keyPressed (KeyEvent e)
  • public abstract void keyReleased (KeyEvent e)
  • public abstract void keyTyped (KeyEvent e)

The keyPressed method is called when a key-pressed event occurs, the keyReleased method is called when a key-released event occurs, and the keyTyped method is called when a key-typed event occurs. To register with a key source, a KeyListener must call the source’s addKeyListener method. (To de-register, a KeyListener would call the source’s removeKeyListener method).

Sample Code for Java KeyListener:

Download the image from here and paste it into the java project folder.

keylistener java code 1
Java KeyListener Code 2
Java KeyListener Code 3

Output: Moveable image. Press keys a, w, s, and d.

Java KeyListener Output
import java.awt.event.*;
import javax.swing.*;
import java.awt.Color;

public class Key_listener extends JFrame implements KeyListener{
	
	JLabel label;
	ImageIcon icon;
	
	Key_listener(){
		

		this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		this.setSize(400,400);
		this.setLayout(null);
		this.addKeyListener(this);
		
		icon = new ImageIcon("rocket_icon.jpg");
		
		label = new JLabel();
		label.setBounds(0, 0, 100, 100);
		label.setIcon(icon);
		//label.setBackground(Color.GREEN);
		//label.setOpaque(true);
		
		this.getContentPane().setBackground(Color.WHITE);
		this.add(label);
		this.setVisible(true);
	
	}
	
	
    @Override
	public void keyTyped(KeyEvent e) {
		// TODO Auto-generated method stub
    	
    	switch(e.getKeyChar()) {
		  case 'a': label.setLocation(label.getX()-10, label.getY());
		    break;
		  case 'w': label.setLocation(label.getX(), label.getY()-10);
		    break;
		  case 's': label.setLocation(label.getX(), label.getY()+10);
		    break;
		  case 'd': label.setLocation(label.getX()+10, label.getY());
		    break;
		    
    	}
		
	}


	@Override
	public void keyPressed(KeyEvent e) {
		// TODO Auto-generated method stub
		
		switch(e.getKeyCode()) {
		  case 37: label.setLocation(label.getX()-10, label.getY());
		    break;
		  case 38: label.setLocation(label.getX(), label.getY()-10);
		    break;
		  case 39: label.setLocation(label.getX()+10, label.getY());
		    break;
		  case 40: label.setLocation(label.getX(), label.getY()+10);
		    break;
		}
		
	}


	@Override
	public void keyReleased(KeyEvent e) {
		// TODO Auto-generated method stub
		
		System.out.println("You released key char: " + e.getKeyChar());
		System.out.println("You released key code: " + e.getKeyCode());
		
	}

	public static void main(String[] args) {
		// TODO Auto-generated method stub
    new Key_listener();


	}

}

Tutorial Python
Tutorial MySQL
Natural Language Processing (NLP)
Basic Components of Computer System
Characteristics of Computer
Applications of Computer
Java (programming language)– Wikipedia

Comments (No)

Leave a Reply