Witam,
chciałem napisać prostę grę w bilard opartą na wątkach.
Do tego celu napisałem wątek służący do wyświetlania planszy, który jest odświeżany co 5 ms. Tak wygląda run():
Swiat swiat = new Swiat(kij);
while(true){
try{
Thread.sleep(5);
}catch(InterruptedException exc){
System.out.println("Wystąpił bład");
break;
}
okno.getContentPane().add(swiat, BorderLayout.CENTER);
}
Obiekt swiat zawiera Canvas z narysowaną planszą i bilami, zaś okno to obiekt okna.
Gdy uruchomię program z kodem takim jak powyżej, wówczas plansza do gry pojawia się, ale szybko "miga".
Gdy jednak usunę usypianie wątku:
Swiat swiat = new Swiat(kij);
while(true){
okno.getContentPane().add(swiat, BorderLayout.CENTER);
}
Plansza nie chce się narysować, choć wiem, że wątek działa, ponieważ na samej górze okna mam przyciski i one "migoczą".
Co zrobić, aby plansza rysowała się i nie było widać efektu "migotania"?
Pozdrawiam