# Starten eines Applets außerhalb der INIT()-Klasse



## beone (19. Jun 2007)

Hi,

bin derzeit ein wenig am verzweifeln, wie ich ein Applet ausserhalb meiner Klasse starte. Nun ist es mir leider nicht möglich  das Applet von einer anderen Klasse aus zu starten, was aber ein Hauptziel vom Ganzen ist.
Habe schon mitbekommen, das man Applets wunderbar über Websiten (Links) starten kann. Nur warum nicht über eine andere Klasse?! Bei einer Applikation ging das ganz einfach, in dem ich ein Objekt erstellte, und die Methode zum Starten nutze. Nur was mache ich bei einem Applet?

*Hier ein Teilausschnitt:*

//Klasse: SimonGame
//(Fehler:Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException)

```
public void init()	{			    // Aufruf beim Start als Applet
		SimonBild.imgs = new Image[5];
		Image tempImg = createImage(200,200);
		SimonBild.gfx = tempImg.getGraphics();             //[b]<--Vor allem hier kommt es zum Fehler[/b]
		...................                                                   

Habe hier versucht über eine statische Methode "GameStart()" manuell die zu starten:

//Klasse: SimonGame
//zum Starten über eine andere Klasse
public static void GameStart()
	{
		SimonGame simonModule = new SimonGame();
		simonModule.init();
	}

//Klasse: SimonModule
//über diese Klasse soll es nun gestartet werden können
public class SimonModule implements IModule {

	public boolean loadModule()     //Wichtig: dieses LoadModule soll das Spiel später starten! False im Fehlerfall!
    {
                System.out.println("Simon Game starts now");
		SimonGame.GameStart();
                return true;
    }
```

Thanks,

Thomas


----------



## Wildcard (19. Jun 2007)

Das Applet braucht einen Parent (idR JFrame oder Frame).
Dort fügst du dein Applet hinzu.


----------



## beone (19. Jun 2007)

Danke für die rasche Antwort. Wunderbar wäre noch ein brauchbares Beispiel, wo dieses noch unter Umständen verdeutlicht wird. Unter google habe ich erst mal nichts entdeckt.

lg,

Thomas


----------



## Wildcard (19. Jun 2007)

http://java.sun.com/developer/technicalArticles/Programming/TurningAnApplet/


----------



## L-ectron-X (20. Jun 2007)

Oder hier im Forum: http://www.java-forum.org/de/suche=appletcation


----------



## Guest (20. Jun 2007)

Stichwort: Applet in einer Applikation (bzw. hier Frame).

Vielen Dank! Die Seiten, die hier genannt wurden haben mir sehr viel weitergeholfen. Hier mein Lösung des Problems:




```
public class AppApp extends Applet

implements WindowListener {


public void init() {

setLayout( new FlowLayout() );

Label info = new Label("Starte bitte SimonGame!");

add(info);

setVisible(true);

}


public static void main (String[] args)

{

Frame f = new Frame("SimonApplication");


final Applet applet = new SimonGame();


f.setLayout( new BorderLayout() );


f.addWindowListener

(new WindowAdapter()

{

public void windowClosing (WindowEvent event)

{

applet.stop();

applet.destroy();

System.exit(0);

}

}

);

f.add ("Center", applet);

f.setVisible(true);

applet.init();

applet.start();

f.pack();

}



public void windowClosing (WindowEvent e) {

this.stop();

System.exit(0);

}

public void windowClosed (WindowEvent e) { }

public void windowOpened (WindowEvent e) { }

public void windowIconified (WindowEvent e) { }

public void windowDeiconified (WindowEvent e) { }

public void windowActivated (WindowEvent e) { }

public void windowDeactivated (WindowEvent e) { }

}
```



vielen Dank,

Birol


----------

