# Applet starten/beenden



## azur01 (19. Mrz 2005)

Hallo,
habe gerade eine Animation erstellt, die soweit auch ganz gut läuft. In der Animation werden Kreise in der "paint"  durch


```
try {
       Thread.sleep( 10 );
       }
        catch ( InterruptedException e ) { }
```

zeitlich versetzt gezeichnet.  Wenn ich nach dr Animation jedoch auf "Neu


----------



## azur01 (19. Mrz 2005)

Wenn ich auf "Neu Laden" klicke, dann wird das Applet nicht von Beginn an ausgeführt, sondern startet dort, wo es aufgehört hat. Wie kann ich das verhindern?

cu azur


----------



## L-ectron-X (19. Mrz 2005)

Indem du den Code, der nach einem Wiederstart ausgeführt werden soll, in die start()-Methode des Applets verlegst.
Die init()-Methode verwendest Du dann nur noch, um Instanzvariablen zu initialisieren und nicht mehr dazu Teile des Programmablaufes zu implementieren.


----------



## azur01 (19. Mrz 2005)

ich hab im Augenblick nur eine paint Methode. Kann ich die Init-Methode und die Start()-Methode in die Paint hineinlegen??

Nach dem Schema:


```
paint(){
 
  int(){}
  start(){}

}

Es kommen aber noch ein paar Textfelder in das Applet hinein und außerdem ein actionListener Geht das?
```


----------



## Illuvatar (19. Mrz 2005)

was? methoden in methoden? nö. mach doch ganz normale methoden ???:L


----------



## L-ectron-X (19. Mrz 2005)

Der Lebenszyklus eines Applets umfasst 4 Methoden.

```
public void init() {}
```
dient zum Initialisieren des Applets und bestimmter Instanzvariablen und wird vom Browser nur einmal nach dem Laden des Applets aufgerufen.


```
public void start() {}
```
startet die Ausführung des Applets und wird vom Browser nach Abarbeitung der init()-Methode aufgerufen.
Außerdem ruft der Browser diese Methode auf, wenn man auf die Seite zurückkehrt, bspw. nach Verlassen der Webseite durch Klick auf einen Link.


```
public void stop() {}
```
wird vom Browser aufgerufen, wenn die aktuelle Seite, in dem das Applet eingebettet ist, verlassen wird.
Die Ausführung des Applets wird angehalten und wieder mit Aufruf der start()-Methode fortgeführt, wenn der Benutzer zu dieser Seite zurückkehrt.


```
public void destroy() {}
```
wird vom Browser aufgerufen, wenn er geschlossen werden soll. Der Browser beendet damit auch die Ausführung der VM.


----------



## azur01 (19. Mrz 2005)

ich habe den gesamten programmablauf ja jetzt in der paint-Methode. Wie soll ich das verknüpfen?
in den anderen Methoden kann, ich doch nicht zeichnen?!?


----------



## Wildcard (20. Mrz 2005)

azur01 hat gesagt.:
			
		

> ich habe den gesamten programmablauf ja jetzt in der paint-Methode. Wie soll ich das verknüpfen?
> in den anderen Methoden kann, ich doch nicht zeichnen


Die paint Methode ist dazu da etwas anhand eines bestehenden Datenmodells zu zeichnen. Alles andere hat absolut nichts darin verloren!


----------

