[Java] Komponenten-Applet
#1
/*
Diese Datei muss KomponentenApplet.java heißen

In dieser Klasse wird ein einfaches Applet erstelt.
Ein Applet ist eine Art Java-Programm welches in eine
HTML-Seite eingefügt wird. Applets sind heutzutage nicht mehr
so in weil Sie langsam sind.
Es gibt 5 verschiedene Methoden die in einem Applet vorkommen können.
Sie müssen aber nicht alle vorkommen.

init()
Mit dieser Methode informiert der Browser dass es geladen wurde.
In dieser Methode werden alle notwendigen Objekte erzeugt und nitialisiert.

destroy()
Diese Methode wird aufgerufen um zu signalisieren, dass das Applet demnächst
beendet wird. Hier können noch Resourcen freigegeben werden.

paint(Graphics)
Diese Methode wird aufgerufen, wenn der sichtbare Grafikbereich im Browser neu
gezeichnet werden muss.

start()
Mit dieser Methode wird dem Applet signalisiert,dass sein Ablauf beginnen kann.

stop()
Mit dieser Methode wird dem Applet signalisiert, dass sein Ablauf beendet werden
muss.

In diesem Beispiel verwende ich nur init. In ihr wird die Oberfläche "aufgebaut".

Das folgende Applet zeigt ein Formular, in welches man Name und E-Mailadresse
eingeben kann. Wenn man auf den Schalter "OK" klickt, wird die Emailadresse
überprüft ob sie das @-zeichhen und einen Punkt beinhaltet.
Wenn nicht bekommt man eine Meldung.

das einbinden des Applets in eine HTML-Seite kann so aussehen:

<HTML>
<HEAD>
<TITLE>
</TITLE>
</HEAD>
<BODY>
<applet code="KomponentenApplet.class" width="300" height="150">
</applet>
</BODY>
</HTML>

Die Angaben width und heigt geben die Größe des Applets an.
Wenn sie zu klein gewählt sind, kann man gewisse Elemente nicht sehen,
weil zu wenig Platz ist um sie darzustellen.

*/


import java.applet.*;
import java.awt.*;
import java.awt.event.*;

public class KomponentenApplet extends Applet
implements ActionListener

{
//Eingabefelder
TextField tfname;
TextField tfmail;

//Labels für die Ausgabe
Label lblNameausg;
Label lblMailausg;

//panels als Container
Panel pnleingabefelder1;
Panel pnlButton;
Panel pnlAusgabe1;


//Die Komponenten werden in der Methode init.
public void init()
{
pnleingabefelder1 = new Panel();
pnlButton = new Panel();
pnlAusgabe1 = new Panel();

//leerer Label
Label lblLeer = new Label ();

//Beschriftungen
Label labelname = new Label ("Name: ");
Label labelmail = new Label ("E-Mail: ");

//Eingabefelder
tfname = new TextField(20);
tfmail = new TextField(20);

//Schalter
Button button = new Button("OK");
button.addActionListener(this);

lblNameausg = new Label("Name: ");
lblMailausg = new Label("Mail: ");

pnleingabefelder1.setLayout(new GridLayout(2,2));
pnleingabefelder1.add(labelname);
pnleingabefelder1.add(tfname);
pnleingabefelder1.add(labelmail);
pnleingabefelder1.add(tfmail);

pnlButton.add(button);

pnlAusgabe1.setLayout(new GridLayout(2,1));
pnlAusgabe1.add(lblNameausg);
pnlAusgabe1.add(lblMailausg);


//Der Hintergrund des Applets bekommt das BorderLayout.
//So können die Panels optimal platziert werden.
this.setLayout(new BorderLayout());
this.add(pnleingabefelder1, BorderLayout.NORTH);
this.add(pnlButton, BorderLayout.CENTER);
this.add(pnlAusgabe1, BorderLayout.SOUTH);

}

//Die Ereignismethode welche die Emailadresse überprüft.
public void actionPerformed(ActionEvent e)
{ //hier wird die email-adresse überprüft
String mailaddi;
mailaddi = tfmail.getText();

//mit indexOf kann innerhalb eines Strings nach einem bestimmten Zeichen gesucht
//werden.
if (mailaddi.indexOf("@") == -1)
{
lblNameausg.setText("Name: " + tfname.getText());
//Wenn dass @-zeichen in der Mailadresse fehlt kommt eine Fehlermeldung
lblMailausg.setText("Bei der Email-Adresse fehlt das @");

}

else

if (mailaddi.indexOf(".") == -1)
{
lblNameausg.setText("Name: " + tfname.getText());
//Wenn der Punkt in der Mailadresse fehlt kommt eine Fehlermeldung
lblMailausg.setText("Bei der Email-Adresse fehlt der .");

}

else

{
//ansonsten wird Name und Mailadresse wiederholt.
lblNameausg.setText("Name: " + tfname.getText());
lblMailausg.setText("Mail: " + tfmail.getText());

}
}
}


quelle: http://marlem-software.de/jKomponentenApplet.htm
  Zitieren


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste