Piszę Arkanoida w JAVIE. Obecnie mam już zrobioną planszę, deseczkę i piłkę. Zaimplementowałem ruch deseczki wraz z ruchem myszki, w osi X. Tylko, że jak ruszam kursorem, to stary obraz deski nie znika. Powstaje długa, linia, zamiast krótkiej deski. Nie wiem czemu. Podam część kodu:
public void paintComponent(Graphics g)
{
super.paintComponents(g);
g.setColor(Color.black);
wyswietlCegielki(g);
wyswietlDeske(g);
wyswietlKulke(g);
}
public void wyswietlDeske(Graphics g)
{
des.wyswietlDeske(g);
}
public class Deska {
private int x, y;
private int w, h;
(...)
public void wyswietlDeske(Graphics g)
{
g.fillRect(x, y, w, h);
}
}
@Override
public void mouseMoved(MouseEvent me) {
des.setX(me.getX() - des.getW() / 2);
}
p.s.
Dodałem w metodzie paintComponent(Graphics g) na początek:
g.fillRect(0, 0, Toolkit.getDefaultToolkit().getScreenSize().width, Toolkit.getDefaultToolkit().getScreenSize().height);
Ale w poprzednim programie, gdzie animowałem ruch kulki, nie dodałem tego i kulka wyświetlała się prawidłowo. Czemu tutaj jest inaczej?