Applet



  • Also ich hab eine Animation die einen Uhrenzeiger simulieren soll und im Hintergrund soll das Bild einer Uhr sein.
    Die Bewegung des Zeigers laeuft mit einem Thread nur zeichnet er mir das Hintergrundbild auch immer neu, wie kann man das aendern sodass das Bild immer gleich bleibt?

    BufferedImage img;
    Thread t;
    public void init() {
        URL url = new URL(getCodeBase(), "uhr.jpg");
        img = ImageIO.read(url);
        t = new Thread();
        t.start();
    }
    
    public void run() {
        while (true) {
           repaint();
           t.sleep(50);
        }
    }
    
    public void paint(Graphics g) {
          super.paintComonents(g);
    
          Graphics2D gd = (Graphics2D) g;
          gd.drawImage(img, 0, 0, null);
    
            ...
            ...
    
    }
    


  • Hi

    Ich versteh nicht ganz inwiefern du den Uhrzeiger bewegst, dass sehe ich gar nicht im Thread?

    Du musst das Hintergrundbild und denn Uhrzeiger jedes Frame wieder neu zeichnen, sonst wirst du die alten Uhrzeiger nicht los, welche du in den letzten Frames gezeichnet hast.

    Gruss
    samyboy


Log in to reply