Skip to main content
GameDev.net gamedev.net
🔒 Locked

[java] key listener wont work

Started by brian89 Jun 10, 2004 at 2:27 PM 4 replies 450+ views
Original Post
brian89
brian89
why wont this keylistener work?
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

public class keyTest extends JPanel
        implements KeyListener
{

        public static void main(String args[]) {
                JFrame frame=new JFrame("key test");
                keyTest kt=new keyTest();
                frame.getContentPane().add(kt);
                frame.setSize(500, 500);
                frame.setVisible(true);
        }
        public keyTest() {
                initKey();
        }
        public void initKey() {
                addKeyListener(this);
                System.out.println("keylistener added");
        }
        public void keyPressed(KeyEvent e) {
                System.out.println("pressed");
        }
        public void keyReleased(KeyEvent e) {
                System.out.println("released");
        }
        public void keyTyped(KeyEvent e) {
                System.out.println("typed");
        }
}

 
-Brian
brian89
brian89
when i press a key it doenst do anything, its supposed to print "pressed" "released" or "typed" when a key is pressed
-Brian
LizardCPP
LizardCPP
This works:


import javax.swing.*;
import java.awt.event.*;

public class keyTest extends JPanel implements KeyListener {

public static void main(String args[]) {
JFrame frame=new JFrame("key test");
keyTest kt=new keyTest();
frame.getContentPane().add(kt);
frame.addKeyListener(kt); //added this

frame.setSize(500, 500);
frame.setVisible(true);
}

public keyTest() {
initKey();
}

public void initKey() {
// this.addKeyListener(this);

System.out.println("keylistener added");
}

public void keyPressed(KeyEvent e) {
System.out.println("pressed");
}

public void keyReleased(KeyEvent e) {
System.out.println("released");
}

public void keyTyped(KeyEvent e) {
System.out.println("typed");
}
}



LizardCPP

[edited by - LizardCPP on June 10, 2004 4:04:17 PM]
brian89
brian89
thank you very much
-Brian
capn_midnight
capn_midnight
Well, I assume the reason was either A) the JPanel cannot recieve a keyListener or B) it cannot recieve focus to know it should be listening for keys, or C) the panel can do both, but you never focused on the panel.



capn_midnight | Captain Midnight | deviantArt
ACM | SIGGRAPH | Generation5
"I''m tired of all this nonsense about beauty being only skin-deep. That''s deep enough. What do you want - an adorable pancreas?" -Jean Kerr

Topic Locked

This topic has been locked by a moderator. New replies are not allowed.

Sign in to reply to this topic.