Adan0s
Grünschnabel
Hallo,
habe folgendes Problem:
Ich möchte ein geometrisches Objekt langsam zeichnen lassen, so, dass es nicht sofort bereits gezeichnet ist, wenn das Programm gestartet wird.
Rein theoretisch habe ich mir gedacht, dass nach jedem gezeichnetem Pixel eine bestimmte Anzahl an ms geschlafen wird, allerdings bin ich mit dem Threadingmodell von Java nicht gut vertraut, und deshalb werde ich da wohl einen Fehler machen.
Dieser wirkt sich daraufhin hinaus, dass das Objekt zwar so gezeichnet wird, wie ich es will, allerdings zweimal.
Hoffentlich kann mir jemand flink helfen.
Vielen Dank im voraus!
habe folgendes Problem:
Ich möchte ein geometrisches Objekt langsam zeichnen lassen, so, dass es nicht sofort bereits gezeichnet ist, wenn das Programm gestartet wird.
Rein theoretisch habe ich mir gedacht, dass nach jedem gezeichnetem Pixel eine bestimmte Anzahl an ms geschlafen wird, allerdings bin ich mit dem Threadingmodell von Java nicht gut vertraut, und deshalb werde ich da wohl einen Fehler machen.
Dieser wirkt sich daraufhin hinaus, dass das Objekt zwar so gezeichnet wird, wie ich es will, allerdings zweimal.
Code:
import java.awt.*;
import java.awt.event.*;
public class TestFrame extends Frame
{
public TestFrame ()
{
setTitle("Panel-Beispiel");
addWindowListener(new TestWindowListener());
add(new DrawingPanel());
setSize(320,288);
setVisible(true);
}
class DrawingPanel extends Panel
{
public void paint(Graphics g)
{
for (int a=0; a<320; a++)
{
g.setColor(Color.RED);
g.fillRect(0,10,a,20);
try{Thread.sleep(5);}catch(InterruptedException x){}
}
}
}
class TestWindowListener extends WindowAdapter
{
public void windowClosing(WindowEvent e)
{
e.getWindow().dispose();
System.exit(0);
}
}
public static void main (String args[])
{
new TestFrame ();
}
}
Hoffentlich kann mir jemand flink helfen.
Vielen Dank im voraus!