Hallo,
Ich habe folgendes Problem und zwar habe ich mich den ganzen Nachmittag mit dem KeyListener von Java herumgeschlagen. Also, ich möchte gerne folgendes wenn ich die Linke Pfeiltaste drücke soll sich die Variable "car_ypos" z.B. um +1 verändern. Hier noch mein Programm:
Vielen Dank für eure Hilfe!!!
MfG
Ich habe folgendes Problem und zwar habe ich mich den ganzen Nachmittag mit dem KeyListener von Java herumgeschlagen. Also, ich möchte gerne folgendes wenn ich die Linke Pfeiltaste drücke soll sich die Variable "car_ypos" z.B. um +1 verändern. Hier noch mein Programm:
Vielen Dank für eure Hilfe!!!
Code:
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class CarCrash extends JFrame {
static CarCrash fenster;
Bildleinwand bildanzeige;
Image b_car;
Image b_street;
Image b_police;
int police_ypos = 200;
int police_xpos = 0;
int car_ypos = 210;
int car_xpos = 635;
class CMeinActionLauscher implements ActionListener {
public void actionPerformed(ActionEvent e) {
String label;
label = e.getActionCommand();
if(label.equals("Beenden"))
System.exit(0);
}
}
CarCrash(String titel) {
super(titel);
setLayout(new GridLayout());
bildanzeige = new Bildleinwand();
add(bildanzeige);
JMenuBar menueleiste = new JMenuBar();
setJMenuBar(menueleiste);
JMenu menu1 = new JMenu("Datei");
JMenu menu2 = new JMenu("Optionen");
JMenu menu3 = new JMenu("Hilfe");
JMenuItem item1 = new JMenuItem("Beenden");
JMenuItem item2 = new JMenuItem("Sound");
JMenuItem item3 = new JMenuItem("Spielsteuerung");
menu1.add(item1);
menu2.add(item2);
menu3.add(item3);
menueleiste.add(menu1);
menueleiste.add(menu2);
menueleiste.add(menu3);
item1.addActionListener(new CMeinActionLauscher());
item2.addActionListener(new CMeinActionLauscher());
item3.addActionListener(new CMeinActionLauscher());
setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
ImageIcon tmp1 = new ImageIcon("img/street.png");
b_street = tmp1.getImage();
ImageIcon tmp2 = new ImageIcon("img/car.png");
b_car = tmp2.getImage();
ImageIcon tmp3 = new ImageIcon("img/police.png");
b_police = tmp3.getImage();
bildanzeige.repaint();
}
public static void main(String[] args) {
CarCrash fenster = new CarCrash("Car Crash");
fenster.pack();
fenster.setSize(500,800);
fenster.setVisible(true);
fenster.setResizable(true);
}
class Bildleinwand extends JPanel {
public void paintComponent(Graphics g) {
super.paintComponent(g);
g.drawImage(b_street,0,0,500,800, this);
g.drawImage(b_car,car_ypos,car_xpos,60,110, this);
g.drawImage(b_police,police_ypos,police_xpos,60,110,this);
setPreferredSize(new Dimension(500, 800));
setMinimumSize(new Dimension(500, 800));
setMaximumSize(new Dimension(500, 800));
}
}
}
MfG