Kreis(Pacman) zeichnen

Daimond

Mitglied
Guten Abend,
Ich solle den hübschen gelben Kreis (Pacman) zeichnen dem einen Teil des Kreise fehlt. Der fehlende Kreis soll größer und kleiner werden. Als erstes habe ich erstmal 2 verschiedene Zustände programmiert. Leider klappt der wechsel zwischen den beiden Zuständen nur einmal und dann passiert nichts mehr, obwohl die Variablen sich weiter verändern. Ich hoffe mir kann jemand sagen wo der Fehler ist oder einen Tipp geben.

Java:
package HaPacman;

import java.awt.BorderLayout;
import java.awt.Color;
import javax.swing.JFrame;
import java.lang.InterruptedException;

public class Pacman {
  
  private JFrame frame;
  private DrawPanel panel;
  
  private void initGui() {
    frame = new JFrame("Pacman");
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    panel = new DrawPanel();
    frame.add(panel, BorderLayout.CENTER);
    frame.setSize(500, 500);
    frame.setVisible(true);
    while (true) {
      panel.repaint();
      if (panel.start==100) {
        panel.start=10;
        panel.laenge=320;
      } // end of if
      else{
        panel.start=100;
        panel.laenge=220;
      }
      try{
        Thread.sleep(1000);
      } catch(InterruptedException e){}
    }
  }
  
  public static void main(String[] args) {
    Pacman pacman = new Pacman();
    pacman.initGui();
  }
}


Java:
package HaPacman;

import java.awt.Color;
import java.awt.Graphics;
import java.util.Random;

import javax.swing.JPanel;
         
public class DrawPanel extends JPanel {
  public int x=150;
  public int y=150;
  public int hoehe=100;
  public int breite=100;
  public int start=0;
  public int laenge=200;  
  
  @Override
  protected void paintComponent(Graphics g) {
    g.setColor(Color.YELLOW);
    g.fillArc(x,y,hoehe,breite,start,laenge);
  }
  
}
 

Neue Themen


Oben