java小程序出错!!!实现键盘方向键移动不了,帮我看看代码那里错,谢谢!!

来源:百度知道 编辑:UC知道 时间:2024/05/22 17:48:58
import java.awt.*;
import java.awt.Graphics;
import java.applet.Applet;
import java.awt.event.*;
import java.awt.event.KeyEvent;

public class TestKey extends Applet implements KeyListener{

int x,y;
public void init() {
addKeyListener(this);
x=30;
y=30;
}

public void keyTyped(KeyEvent e) {

if(e.getKeyCode()==e.VK_UP)
y+=10;
else if(e.getKeyCode()==e.VK_DOWN)
y-=10;
else if(e.getKeyCode()==e.VK_LEFT)
x+=10;
else if
(e.getKeyCode()==e.VK_RIGHT)
x-=10;

}

public void paint(Graphics g){
g.drawString("java程序设计", x, y );
}
public void keyReleased( KeyEvent e ) { }
public void keyPressed( KeyEvent e ) { }
}
编译是可以的,就是运行那个htm程序的时候只显

import java.awt.Graphics;
import java.applet.Applet;
import java.awt.event.*;
import java.awt.event.KeyEvent;

public class TestKey extends Applet implements KeyListener {

int x=30, y=30;

public void init() {
addKeyListener(this);
}

public void keyTyped(KeyEvent e) {

}

public void paint(Graphics g) {
g.drawString("java程序设计", x, y);
}

public void keyReleased(KeyEvent e) {

}

public void keyPressed(KeyEvent e) {
if (e.getKeyCode() == e.VK_DOWN)
y += 10;
else if (e.getKeyCode() == e.VK_UP)
y -= 10;
else if (e.getKeyCode() == e.VK_RIGHT)
x += 10;
else if (e.getKeyCode() == e.VK_LEFT)
x -= 10;
repaint();
}
}
改成这样试试

你木有repaint()啊

public void keyTyped(KeyEvent e) {

if(e.getKeyCode()==e.VK_UP) {
y+=10;
repaint();