我试图根据我使用的箭头键让我的图像在屏幕上移动。现在它没有响应我按下的任何键。出于测试目的,我只尝试使用右箭头键。当按下按键时,如何让图像响应?这就是我到目前为止所做的:
import java.applet.Applet;
import java.awt.Graphics;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
//import java.awt.event.ActionEvent;
//import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
public class EC extends Applet{
/**
*
*/
private static final long serialVersionUID = 1L;
int x=50;
int y=50;
int dx,dy;
public void keyPressed(KeyEvent e)
{
int keyCode = e.getKeyCode();
if(keyCode==KeyEvent.VK_RIGHT)
{
dx=1;
x+=dx;
}
}
public void keyReleased(KeyEvent e)
{
int keyCode = e.getKeyCode();
if(keyCode==KeyEvent.VK_RIGHT)
{
dx=0;
}
}
public void paint(Graphics g)
{
g.drawImage(IllustrationManager.player[0][0],x,y,null);
}
}
答案 0 :(得分:2)
有关使用KeyListener的问题以及使用Key Bindings的更好解决方案,请参阅Motion Using the Keyboard。
答案 1 :(得分:0)
@Override
public void init(){
addKeyListener(new KeyAdapter(){
public void keyPressed(KeyEvent e)
{
int keyCode = e.getKeyCode();
if(keyCode==KeyEvent.VK_RIGHT)
{
dx=1;
x+=dx;
this.repaint(); // forgot this initially
}
}
});
}