我在编程Java时是全新的。我无法让我的keyEvent
s无法工作。我需要这个我做的一个小游戏。这里是我的代码:如何让keyEvent在Java中工作?
package markusrytter.pingpong;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.RenderingHints;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class main extends JPanel implements KeyListener {
static int ballX;
static int ballY;
static int ballR = 15;
@Override
public void paint(Graphics g) {
super.paint(g);
Graphics2D g2d = (Graphics2D) g;
g2d.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
g2d.fillOval(ballX - ballR, ballY - ballR, ballR * 2, ballR * 2);
}
public static void main(String[] args) throws InterruptedException {
JFrame frame = new JFrame("Sample Frame");
main game = new main();
frame.add(game);
frame.setSize(1400, 800);
frame.setVisible(true);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setLocationRelativeTo(null);
ballX = frame.getContentPane().getSize().width/2;
ballY = frame.getContentPane().getSize().height/2;
while (true) {
game.repaint();
Thread.sleep(10);
}
}
public void keyPressed(KeyEvent e) {
System.out.println("A key is Pressed: " + e.getKeyCode());
if(e.getKeyCode() == KeyEvent.VK_SPACE){
System.out.println("Spacebutton pressed");
}
}
}
我确实希望有人可以帮忙,我试图观看视频,但又一次,我是新来的java。
(1-)不知道为什么这得到这么多的票。 OP表示他们阅读文章并直接复制代码。如果直接复制代码,你不觉得代码应该工作吗? – camickr