# Größe Java-Applet während der Laufzeit ändern



## Christoph H. (15. Dez 2005)

Hallo,

normalerweise legt man die Größe des Java-Applets im entsprechenden html-file fest. Nun würde ich gerne wissen ob es möglich ist, die Größe während der Laufzeit des Applets zu ändern, ohne die Seite neu laden zu müssen. Ideal wäre es sogar wenn ich im Applet selbst die Größe ändern könnte. Weiß da vielleicht Jemand rat?

Gruß Christoph


----------



## Sky (15. Dez 2005)

Was mir ganz spontan einfällt:

Anstatt "width=800" kann man auch "width=95%" schreiben. Wenn Du dann das Browser-Fenster in der Größe änderst, ändert sich auch die Applet-Größe.

Ansonsten: Mach einen Frame auf, den kannste ändern.


----------



## Christoph H. (15. Dez 2005)

Sky hat gesagt.:
			
		

> Was mir ganz spontan einfällt:
> 
> Anstatt "width=800" kann man auch "width=95%" schreiben. Wenn Du dann das Browser-Fenster in der Größe änderst, ändert sich auch die Applet-Größe.
> 
> Ansonsten: Mach einen Frame auf, den kannste ändern.



Danke für die Tipps. Wie würde dein Vorschlag mit Frames aussehen?


----------



## Sky (15. Dez 2005)

Ungefähr so:

```
class TestApplet extends JApplet {
  
  private JFrame frame;

  public TestApplet() {

  }

  public void init() {
    // JFrame erzeugen und anzeigen
    // JFrame ist in Größe/Position änderbar
    frame = new JFrame("meinAppletFenster");
    frame.getContentPane().add(new JLabel("ein Label"), BorderLayout.NORTH);
    frame.getContentPane().add(new JTextArea("eine Textbox..."),
                               BorderLayout.CENTER);
    frame.getContentPane().add(new JButton("click me"), BorderLayout.SOUTH);

    frame.setLocationRelativeTo(this);
    frame.pack();
  }

  public void start() {
    frame.setVisible(true);
  }

}
```

Alle Komponenten müssen dann dem Frame (und nicht dem Applet) geaddet werden.


----------



## Christoph H. (19. Dez 2005)

Danke für die Antwort. Ich möchte das Java 1.1.8 kompatibel machen. Soviel ich weiß gibts dort kein JFrame. Habe nur die Klasse Frame gefunden.

Gruß


----------



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

Dann kannst du bei allen Klassennamen das "J" entfernen,
von java.applet.Applet erben lassen
und das getContentPane() entfernen.


----------

