Witajcie, mam pewien problem z programem, ktory co okreslony czas powinien rysowac cos na moim panelu, mianowicie kod:
import java.awt.*;
import javax.swing.*;
public class test3
{
public static void main(String[] args)
{
EventQueue.invokeLater(new Runnable()
{
public void run()
{
MojaRamka ramka = new MojaRamka();
}
});
}
}
class MojaRamka extends JFrame
{
public MojaRamka()
{
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setVisible(true);
setSize(500, 500);
MojPanel a = new MojPanel();
a.setPreferredSize(new Dimension(500,500));
add(a);
}
}
class MojPanel extends JPanel
{
public void paintComponent(Graphics g)
{
try
{
for(int i = 0; i< 10; i++)
{
g.drawString("" + i, 30 * i, 30 * i);
Thread.sleep(1000);
}
}
catch(InterruptedException e)
{
}
}
}
nie działa tak jak oczekuję, na początku jest opóźnienie, potem jednak dopiero wszystko się ładuje, jednak w jednym momencie, a nie tak jak chcę, z sekundowym opóźnieniem, dlaczego? jak zrobić, żeby każda kolejna cyfra wyświetlana była co ~1000 ms?