Informatik-Lexikon |
||
class TextField |
||
AttributeNach dem Grundsatz der Datenkapselung interessieren uns die Attribute der Klasse hier nicht!KonstruktorZur Erzeugung von Textfeldern gibt es vier Konstruktoren. TextField() Dieser Konstruktor erzeugt ein leeres Textfeld, das sehr schmal aussieht. TextField(int laenge) Hier wird ein leeres Feld mit gegebener Länge erzeugt. TextField(String text) Hier wird ein Textfeld erzeugt, das den angegebenen Text enthält. TextField(String text, int laenge) Ein Textfeld mit Text und der Länge laenge. BeispielquelltextDer folgende Quelltext erzeugt das Applet, das in Abbildung 1 dargestellt ist:
1 Beispiel-Quelltext
2 Ein Applet mit vier Textfeldern Die Textfelder werden in der Reihenfolge ihrer Initialisierung dargestellt. Macht man das Applet breiter, so ordnen sich die Textfelder automatisch neu an:
3 Das selbe Applet in einem größeren Fenster Wichtige MethodenZwei sondierende Methoden liefern den Text sowie die Länge des Textfeldes: String getText() int getColumns() Zwei verändernde Methoden können den Inhalt des Textfeldes sowie die Länge verändern; setText kann auch zum Löschen des Textfeldes verwendet werden. void setText(String text) void setColumns(int laenge) Weitere nützliche Methoden (Auswahl)void setBackground(Color c) void setForeground(Color c) Damit kann man schöne farbige Textfelder erzeugen! In Abb. 3 wird gezeigt, wie man neue Farben erzeugt. void setBounds(int x,int y,int breite,int hoehe) Damit kann die Position, Breite und Höhe eines Textfeldes genau bestimmen. Allerdings muss dann der Befehl setLayout(null) in die Init()-Methode des Applets eingebaut werden. void setFont(Font f) Hiermit kann eine bestimmte Schriftart gesetzt werden. In Abb. 3 wird gezeigt, wie man einen neuen Font erzeugt. Der erste Parameter ist die Bezeichnung des Fonts, z.B. "Times New Roman". Der zweite Parameter steht für den Stil (0 = normal, 1 = fett, 2 = kursiv), und der dritte Parameter definiert die Größe des Fonts. Beispiel-QuelltextsetLayout(null);
t2.setBounds( 10,50,150,20);
t2.setBackground
(new Color(255,220,220));
t2.setForeground
(new Color(0,0,127));
t2.setFont
(new Font("Arial",1,18));
Einlesen von Zahlen aus einem TextFieldEine wichtige Operation ist das Einlesen einer Zahl aus einem TextField. An sich gibt ein TextField über den Befehl getText() nur einen String zurück. Wurde also die Zahl 18 in ein TextField geschrieben, so erhält man mit getText() den String "18" und nicht etwa die int-Zahl 18. Betrachten Sie nun aber folgende Zeile: int s = Integer.parseInt(eingabe.getText()); Mit dieser Zeile werden zwei Sachen gleichzeitig gemacht. Zunächst wird die Methode getText() des Textfeldes eingabe aufgerufen. Als Ergebnis wird ein String zurückgeliefert. Dieser String ist gleichzeitig das Argument der Methode parseInt(). Diese Methode gehört zur Klasse Integer. Integer ist nicht zu verwechseln mit dem Datentyp int, sondern es handelt sich tatsächlich um eine Klasse mit einer Vielzahl von Methoden zur Manipulation von int-Zahlen. Eine dieser Methoden ist parseInt(), welche einen übergebenen String in eine int-Zahl umwandelt. Vorausgesetzt, der übergebene String kann überhaupt als int-Zahl interpretiert werden. Wenn Sie als Argument für pasrseInt() zum Beispiel "Hallo Welt" übergeben, so kann die Methode natürlich nicht funktionieren. Sie müssen schon ein Argument wie "18" oder "-500" übergeben. |