Kaffee & Kuchen
Kaffee & Kuchen
die führende deutsche
Java-Seite
von Christoph Bergmann
und Hannes Gamperl



Animacons für jeden
Der Hauptteil

Suche

Erweiterte Suche

Kommunikation
Chat
Forum

Java-Neuigkeiten

Einführung
Was ist Java?
Wie fange ich an?
Bücher über Java

Workshops
Animacons für jeden
Einleitung
Java- & Grafik-Grundlagen

Zeile für Zeile zum Animacon
Init, Start & Stop
Der Hauptteil
Kompilieren & Anzeigen

Der komplette Quellcode
Das Beispiel in Aktion
Chat selbst gemacht
JDBC

Wissen
Entwicklungssysteme

Ressourcen
Applet-Bibliothek
Deutsche Java-Links
Internat. Java-Links
Glossar
News-Archiv

K&K Intern
Pressespiegel
Auszeichnungen
Werbung auf K&K

Weitere Angebote
Milch&Zucker: DHTML
K.&Kekse: Javascript
mac.seite: Apple

Fragen, Lob & Kritik
bitte in das Forum

EMail an java@acc.de
nur, wenn es nichts Allgemeines ist.

Kaffee & Kuchen
ist ein Service von
ACCESS Internet

    7. Der Thread läuft

    Die Hauptmethode des von uns erzeugten Threads legt sich als Erstes für die angegebene Zeit in Millisekunden schlafen. Falls es dabei zu Fehlern kommt, fangen wir diese mit "try {} catch {}" ab. Dann fordern wir mit "repaint()" das System auf, den Applet-Bereich neu zu malen. Dies resultiert in einem Aufruf der "paint()"-Methode des Applets, das muss jedoch nicht sofort geschehen, falls das System gerade Wichtigeres zu tun hat.

    public void run()
    {
    	while (thread != null)
    	{
    		try
    		{
    			Thread.sleep(sleep);
    		} catch (InterruptedException e) {}
    		repaint();
    	}
    }

    8. Die Mal-Methode

    Die "paint()"-Methode wird vom System immer aufgerufen, wenn das Applet neu gezeichnet werden muss, z.B. wenn das Fenster verdeckt war und nun wieder sichtbar ist.

    public void paint(Graphics g)
    {
    	update(g);
    }
    Wir machen in "paint()" nichts weiter, als die Methode "update()" aufzurufen. Dabei bekommen wir einen Zeiger auf den tatsächlichen Grafikbereich des Applets vom System übergeben, den wir einfach an "update()" weiterreichen.


    9. Die Grafikausgabe

    Hier findet nun die eigentlich Grafikberechnung und -ausgabe statt: Hier steckt alles drin, was ein Animacon vom anderen unterscheidet.

    public void update (Graphics g)
    {
    	col++; if(col>255) col=0;
    	offGraphics.setColor(new Color(col, 0, 0));
    
    	i+=3; if(i>=dx) i=0;
    
    	offGraphics.drawLine(   i, 0, dx-i, dy);
    	offGraphics.drawLine(dx-i, 0,    i, dy);
    	offGraphics.drawLine(0,    i, dx, dy-i);
    	offGraphics.drawLine(0, dy-i, dx,    i);
    
    	g.drawImage(offImage, 0, 0, this);
    }
    Zuerst zählen wir den Farbanteil der Zeichenfarbe von 0 bis 255 durch und fangen dann wieder von vorne an. Die Linien die gezeichnet werden, verändern so laufend ihre Farbe.Dann zeichnen wir vier Linien, die zuerst von den Ecken starten. Pro Durchlauf erhöhen wir den Abstand zu den Ecken durch Erhöhen der Variable "i". Je mehr zu "i" aufaddiert wird, desto schneller wandern die Linien über den Schirm.



Init, Start & Stop Kompilieren & Anzeigen
Nach oben

© 1998 Christoph Bergmann / ACCESS Internet. Alle Rechte vorbehalten.