Question on Java Graphics, KeyBoard Events and JFrame
This is my code so far (not including my main and JButton etc... classes.
package Game;
import java.awt.Color;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.event.KeyEvent;
import java.awt.image.BufferedImage;
import java.util.Scanner;
import javax.swing.JFrame;
public class Maze {
BufferedImage img;
JFrame frame;
//Graphics g = img.getGraphics();
int x = 0;
int y = 0;
Graphics g;
Maze(){
frame = new JFrame();
frame.setTitle("Maze");
frame.getContentPane();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOS E);
frame.setSize(800, 800);
frame.setVisible(true);
frame.setBackground(Color.yellow);
frame.getContentPane();
img = new BufferedImage(frame.getWidth(),frame.getHeight(),B ufferedImage.OPAQUE);
}
public void keyPressed(KeyEvent e) {
if(e.getKeyCode()==KeyEvent.VK_DOWN){
System.out.println("key down was pressed");
g.drawRect(x, y-1, 10, 10);
g.fillRect(x, y-1, 10, 10);
g.setColor(Color.black);
}
if(e.getKeyCode()==KeyEvent.VK_UP){
System.out.println(".");
g.drawRect(x, y+1, 10, 10);
g.fillRect(x, y+1, 10, 10);
g.setColor(Color.black);
}
if(e.getKeyCode()==KeyEvent.VK_LEFT){
System.out.println("k");
g.drawRect(x+1, y, 10, 10);
}
if(e.getKeyCode()==KeyEvent.VK_RIGHT){
System.out.println("lol");
g.drawRect(x-1, y, 10, 10);
}
}
{
try {
Thread.sleep(100);
} catch (InterruptedException ex) {
}
}
}
I would like some advice on how I could make it so when the user pressed the arrow keys a rectangle moves on the screen. Thanks.