Hi,
ich muss für die Schule die Angabe so verändern, dass sich ein Kreis nach rechts bewegt, wenn man eine Pfeiltaste drückt. Da ich noch ein Anfänger bin, hab ich so meine Probleme dabei. Selbst geschrieben hab ich nur die Zeilen 6, 11, und 31, der Rest war gegeben. Der Kreis wird gezeichnet, aber sonst tut sich nix.
Wäre echt nett wenn mir jemand helfen könnte.
mfg Devo
ich muss für die Schule die Angabe so verändern, dass sich ein Kreis nach rechts bewegt, wenn man eine Pfeiltaste drückt. Da ich noch ein Anfänger bin, hab ich so meine Probleme dabei. Selbst geschrieben hab ich nur die Zeilen 6, 11, und 31, der Rest war gegeben. Der Kreis wird gezeichnet, aber sonst tut sich nix.
Wäre echt nett wenn mir jemand helfen könnte.
Java:
import java.applet.*;
import java.awt.event.*;
import java.awt.*;
public class pfeiltasten extends Applet implements Runnable, MouseMotionListener, MouseListener, KeyListener {
int fps = 24, bewegen=100;
public void paint(Graphics g) {
g.drawOval(bewegen, 100, 20, 20);
}
public void setup() {
setBackground(Color.white); // Hintergrundfarbe
clean = true; // Soll zuvor gelöscht werden?
}
public void hilfe(int x, int y) {
_g.drawString("width="+width+" height="+height,x,y); // Breite und Höhe des Applets.
_g.drawString("mx="+mx+" my="+my,x,y+16); // X- und Y-Koordinate der Maus.
_g.drawString("button="+button,x,y+32); // Ist die Maustaste gedrückt?
_g.drawString("inside="+inside,x,y+48); // Ist Maus innerhalb des Applets?
_g.drawString("key="+key,x,y+64); // Nummer der gedrückten Taste.
_g.drawString("["+KeyEvent.getKeyText(key)+"]",x,y+80);
}
public void keyTyped(KeyEvent e) {}
public void keyReleased(KeyEvent e) {}
public void destroy() { _f=true; _t=null; }
public void start() { _f=false; _t.start(); }
public void keyPressed(KeyEvent e) { key=e.getKeyCode(); if (key == KeyEvent.VK_RIGHT){ bewegen=bewegen+1;}}
public void run() { while(!_f) { repaint(); pause(fps); } }
public void mouseMoved(MouseEvent e) { mx=e.getX(); my=e.getY(); }
public void mouseDragged(MouseEvent e) { mx=e.getX(); my=e.getY(); }
public void mouseClicked (MouseEvent e) { mx=e.getX(); my=e.getY(); }
public void init() { width=getBounds().width; height=getBounds().height; setup();
addKeyListener(this); _i=createImage(width,height); _g=_i.getGraphics();
addMouseListener(this); addMouseMotionListener(this); _t=new Thread(this); }
public void mousePressed(MouseEvent e) { mx=e.getX(); my=e.getY(); button=true; }
public void mouseReleased(MouseEvent e) { mx=e.getX(); my=e.getY(); button=false; }
public void mouseEntered(MouseEvent e) { mx=e.getX(); my=e.getY(); inside=true; }
public void mouseExited(MouseEvent e) { mx=e.getX(); my=e.getY(); inside=false; }
public void update(Graphics g) { if(clean) clear(); paint(_g); g.drawImage(_i,0,0,this); }
public void pause(int i) { try { _t.sleep(1000/i); } catch(Exception e) {} }
public void clear() { _g.clearRect(0,0,width,height); }
boolean _f, clean, button, inside;
Thread _t; Image _i; Graphics _g;
int key, width, height, mx, my;
}
mfg Devo