Hallo Ihr,
ich habe grade mit Grafikprogrammierung angefangen, und bin gleich auf ein Problem gestoßen, das ich leider nicht alleine lösen kann.
Das folgende kleine Programm zeichnet lediglich ein Viereck. Meine Absicht war es, das Viereck mit der Pfeil-Nach-Oben Taste zu bewegen, was es aber nicht tut. Woran liegt es ?
Bitte an diesem einfachen Beispiel korrigieren und bitte auch keine Links zu "Problemlösungen". Was habe ich hier falsch gemacht?
[Java]import java.awt.Graphics;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import javax.swing.JFrame;
public class Test extends JFrame implements KeyListener {
int x = 100;
int y = 100;
public Test() {
setSize(500, 500);
setVisible(true);
}
@Override
public void paint(Graphics g) {
super.paint(g);
g.fillRect(x, y, 50, 50);
}
@Override
public void keyPressed(KeyEvent e) {
if (e.getKeyCode() == KeyEvent.VK_UP) {
x += 5;
repaint();
}
}
@Override
public void keyReleased(KeyEvent arg0) {
}
@Override
public void keyTyped(KeyEvent arg0) {
}
}[/Java]
und die main:
[Java]public class TestMain {
public static void main(String[] args) {
Test t = new Test();
}
}
[/Java]
ich habe grade mit Grafikprogrammierung angefangen, und bin gleich auf ein Problem gestoßen, das ich leider nicht alleine lösen kann.
Das folgende kleine Programm zeichnet lediglich ein Viereck. Meine Absicht war es, das Viereck mit der Pfeil-Nach-Oben Taste zu bewegen, was es aber nicht tut. Woran liegt es ?
Bitte an diesem einfachen Beispiel korrigieren und bitte auch keine Links zu "Problemlösungen". Was habe ich hier falsch gemacht?
[Java]import java.awt.Graphics;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import javax.swing.JFrame;
public class Test extends JFrame implements KeyListener {
int x = 100;
int y = 100;
public Test() {
setSize(500, 500);
setVisible(true);
}
@Override
public void paint(Graphics g) {
super.paint(g);
g.fillRect(x, y, 50, 50);
}
@Override
public void keyPressed(KeyEvent e) {
if (e.getKeyCode() == KeyEvent.VK_UP) {
x += 5;
repaint();
}
}
@Override
public void keyReleased(KeyEvent arg0) {
}
@Override
public void keyTyped(KeyEvent arg0) {
}
}[/Java]
und die main:
[Java]public class TestMain {
public static void main(String[] args) {
Test t = new Test();
}
}
[/Java]