请教:一个关于JAVA中KeyEvent图形移动的问题

来源:百度知道 编辑:UC知道 时间:2024/06/06 19:26:21
今天对JAVA事件做了一个复习,就随手做了一个小程序,就是在一个Frame中画一个圆,然后上下左右移动它,程序是跑起来了,但是敲键盘没反应...

所以发上来请各位帮帮忙...多谢拉...

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

public class TestKeyEvent{
public static void main(String[] args){
TFrame t = new TFrame("TestKeyEvent");
}
}

class TFrame extends Frame{
static int x=50;
static int y=50;
TFrame(String s){
super(s);
setLayout(null);
setBounds(400,500,200,200);
setVisible(true);
addKeyListener(new KeyAdapter(){
public void keyPressed(KeyEvent e){
int keycode = e.getKeyCode();
if(keycode == KeyEvent.VK_UP){
y+=10;
}
else if(keycode == KeyEvent.VK_DOWN){
y-=10;
}
else if(keycode == KeyEvent.VK_LEFT){
x-=10;
}
else if(keycode == KeyEvent.VK_RIGHT){
x+=10;
}
}
});
addWindowListener(new W

/*setVisible() 和repaint()位置放错了,还有响应Y轴时方向改错了,*/
/*今天对JAVA事件做了一个复习,就随手做了一个小程序,就是在一个Frame
中画一个圆,然后上下左右移动它,程序是跑起来了,但是敲键盘没反应...
*/
import java.awt.*;
import java.awt.event.*;

public class TestKeyEvent
{
public static void main(String[] args)
{
TFrame t = new TFrame("TestKeyEvent");
}
}

class TFrame extends Frame
{
static int x=50;
static int y=50;

TFrame(String s)
{
super(s);
setLayout(null);
setBounds(400,500,200,200);
addKeyListener(new KeyAdapter()
{
public void keyPressed(KeyEvent e)
{
int keycode = e.getKeyCode();
if(keycode == KeyEvent.VK_UP)
{
y-=10;
}
else if(keycode == KeyEvent.VK_DOWN)
{
y+=10;
}
else if(keycode == KeyEvent.VK_LEFT)
{
x-=10;
}
else