SWING bei Javaapplet - Mainwindow

Mik3e

Erfahrenes Mitglied
Hi zusammen!

Ich bin dabei eine Java Applikation als Applet zum Laufen zu bekommen. Die Applikation verwendet die SWING Komponenten von Java.

Zum antesten hab ich mich mal ein wenig rumgespielt (mit tutorials), und stehe vor dem ersten Problem:
Ich starte das Applet, allerdings wird das SWING Panel dann in einem neuen Fenster geöffnet (nicht im eigentlichen Applet Fenster).

Ich vermute das geschieht genau hier:
// Layout-Manager setzen
getContentPane().setLayout(new BorderLayout());


Habt Ihr einen Tipp für mich, wie er die SWING Oberfläche in das bestehende Applet Fenster integriert

Hier der Test-Code:
Code:
import java.applet.Applet;
import java.awt.*;
import java.awt.BorderLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JOptionPane;
import javax.swing.JTextField;

public class AppletApplicationGUIDemo extends Applet {

  // Aufruf beim Start als Applet
  public void init() {
    // Festlegen der Größe
    new SimpleApp();
  }

}

class SimpleApp extends JFrame {
	  
	   /**
	    * Konstruktor
	    */
	   public SimpleApp() {
	     // Der Titel des Fensters soll der
	     // Name der Klasse sein
	     super(SimpleApp.class.getName());
	  
	     // Layout-Manager setzen
	     getContentPane().setLayout(new BorderLayout());
	  
	     // Ein Textfeld oben an den Rand setzen
	     getContentPane().add(new JTextField("Texteingabe"),BorderLayout.NORTH);
	  
	     // Button anlegen
	     JButton button = new JButton("Klick mich!");
	     button.setSize(100,50);
	     // Der Button soll einen Dialog starten
	     // Hier wird eine anonyme, innere Klasse für das
	     // Event-Handling benutzt.
	     button.addActionListener(new ActionListener() {
	       public void actionPerformed(ActionEvent e) {
	  
	         JOptionPane.showMessageDialog (
	              (JButton) e.getSource(), "Danke.");
	       }
	     });
	  
	     // Den Button in der Mitte platzieren
	     getContentPane().add(button, BorderLayout.CENTER);
	  
	     // Größe setzen (oder pack() aufrufen)
	     setSize(1000, 750);
	     // Fenster sichtbar machen
	     setVisible(true);
	   }
}

Danke für alle Tipps,
LG
Mike
 

Neue Beiträge

Zurück