请教 这段程序 键盘监听 怎么无效?谢谢import java.applet.Applet;
import java.awt.Graphics;
import java.awt.event.*;public class TestKeyListener extends Applet implements KeyListener {
int x=20;
public void init() {
addKeyListener(this);
}
public void paint(Graphics g){
//g.drawString("x is "+x,x,40) ;
g.drawString("A",x,40) ;
} public void keyTyped(KeyEvent e) {
if(e.getKeyChar()=='r'||e.getKeyChar()=='R'){
x += 20;
repaint();
}
} public void keyReleased( KeyEvent e ) {}
public void keyPressed( KeyEvent e ) {}
}
<applet code=TestKeyListener.class width=400 height=200>
</applet>
import java.awt.Graphics;
import java.awt.event.*;public class TestKeyListener extends Applet implements KeyListener {
int x=20;
public void init() {
addKeyListener(this);
}
public void paint(Graphics g){
//g.drawString("x is "+x,x,40) ;
g.drawString("A",x,40) ;
} public void keyTyped(KeyEvent e) {
if(e.getKeyChar()=='r'||e.getKeyChar()=='R'){
x += 20;
repaint();
}
} public void keyReleased( KeyEvent e ) {}
public void keyPressed( KeyEvent e ) {}
}
<applet code=TestKeyListener.class width=400 height=200>
</applet>
import java.awt.event.*;public class Sample_11_5_2 extends Frame
implements KeyListener { String msg = "";
int X = 20, Y = 50; public Sample_11_5_2() {
addKeyListener(this);
requestFocus(); //请求获得输入焦点
} //处理键盘按钮按下事件
public void keyPressed(KeyEvent ke) {
//msg="按下按键";
//repaint();
} //处理键盘按钮松开事件
public void keyReleased(KeyEvent ke) {
//msg+=",松开按键";
//repaint();
} //处理键盘字符按钮事件
public void keyTyped(KeyEvent ke) {
msg += ke.getKeyChar();
repaint();
} // 显示记录信息
public void paint(Graphics g) {
g.drawString(msg, X, Y);
}
public static void main(String[] args){
Sample_11_5_2 s=new Sample_11_5_2();
s.setSize(300,100);
s.setVisible(true);
}
}