我的问题是我哪里出错了。它应该是一个框架,我可以控制一个椭圆形,左右前后移动,然后使其与箭头一起移动。但是现在我甚至不能制作椭圆形,甚至不能插入一个字。
import java.awt.Graphics;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import javax.swing.JFrame;
public class JavaGame extends JFrame{
int x, y;
public class AL extends KeyAdapter {
public void keyPressed(KeyEvent e){
int keyCode = e.getKeyCode();
if(keyCode ==e.VK_LEFT){
x--;
}
if(keyCode ==e.VK_RIGHT){
x++;
}
if(keyCode ==e.VK_DOWN){
y--;
}
if(keyCode==e.VK_UP){
y++;
}
}
public void keyReleased(KeyEvent e){
}
}
public JavaGame (){
addKeyListener(new AL());
setTitle("Game");
setSize(250,250);
setResizable(false);
setVisible(true);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public void Paint(Graphics g){
x = 150;
y = 150;
g.fillOval(x, y, 15, 15);
repaint();
}
public static void main(String[] Args){
new JavaGame();
}
}
答案 0 :(得分:7)
可能是因为Paint
不是标准的Java paint
方法。我也没有看到任何类似事件循环的东西 - 你考虑过检查任何Swing教程/等等吗?
答案 1 :(得分:4)
建议:
paintComponent(...)
方法(通常)。例如,请在此处查看我的示例代码:How to make an image move while listening to a keypress in Java.