Hallo, ich habe folgenden Code:
Ich will das Bild knabe.JPG laden und wenn ich einen Button drücke soll es nach oben oder unten oder rechts oder links gehen. aber er zeit das bild nicht an. auch bei einem drawString() machz er nix
Code:
package TestSpiel;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class HauptClasse extends JFrame implements ActionListener {
JButton right, left, top, down;
Spieler spieler = new Spieler();
public HauptClasse() {
super("Das Spiel");
standartOnes();
makeCompenents();
arrangeCompenents();
registerCompenents();
pack();
}
private void standartOnes() {
setVisible(true);
}
private void makeCompenents() {
right = new JButton("Nach rechts gehen");
left = new JButton("Nach links gehen");
top = new JButton("Nach oben gehen");
down = new JButton("Nach unten gehen");
}
private void arrangeCompenents() {
setLayout(new BorderLayout());
add(right,"East");
add(left,"West");
add(top,"North");
add(down,"South");
}
private void registerCompenents() {
right.addActionListener(this);
left.addActionListener(this);
top.addActionListener(this);
down.addActionListener(this);
}
public void actionPerformed(ActionEvent e) {
if(e.getSource().equals(right)) {
int x;
spieler.goRight();
x = spieler.getX();
System.out.println(x);
repaint();
}
else if(e.getSource().equals(left)) {
int x;
spieler.goLeft();
x = spieler.getX();
System.out.println(x);
repaint();
}
else if(e.getSource().equals(top)) {
int y;
spieler.goTop();
y = spieler.getY();
System.out.println(y);
repaint();
}
else if(e.getSource().equals(down)) {
int y;
spieler.goDown();
y = spieler.getY();
System.out.println(y);
repaint();
}
}
public static void main(String[] args) {
HauptClasse frame = new HauptClasse();
}
public void paint(Graphics g) {
Image knabe;
int x = spieler.getX();
int y = spieler.getY();
Toolkit werkzeug = Toolkit.getDefaultToolkit();
knabe = werkzeug.getImage("knabe.JPG");
g.drawImage(knabe,x ,y, this);
}
}
Ich will das Bild knabe.JPG laden und wenn ich einen Button drücke soll es nach oben oder unten oder rechts oder links gehen. aber er zeit das bild nicht an. auch bei einem drawString() machz er nix