/*****************************************************/ /* Prof. Dr. Carsten Vogt */ /* FH Koeln, Fak. 07 / Nachrichtentechnik */ /* http://www.nt.fh-koeln.de/vogt */ /* */ /* Das Programm zeigt den Gebrauch von Textfenstern. */ /*****************************************************/ import java.awt.*; import java.awt.event.*; import javax.swing.*; class FrameFuerTf extends JFrame { // Textfelder zur Eingabe bzw. Anzeige eines Klartexts: private JTextField eingabeFeld, ausgabeFeld; // Passwortfeld, bei dem der eingegebene Text verborgen bleibt: private JPasswordField passwortFeld; // Label zur Anzeige eines statischen Texts: private JLabel label; // Konstruktor zur Erzeugung der Benutzeroberflaeche // (Parameter gibt Fensternamen an): FrameFuerTf(String s) { // Fensterrahmen erzeugen: super(s); // Container für Labels und Textfelder erzeugen: Container c = getContentPane(); c.setLayout(new GridLayout(6,1)); c.setForeground(Color.black); // Textfelder und Labels erzeugen und einfuegen: label = new JLabel("normale Texteingabe:"); label.setFont(new Font("Arial",Font.BOLD,24)); label.setForeground(Color.black); c.add(label); eingabeFeld = new JTextField(); eingabeFeld.setFont(new Font("Arial",Font.BOLD,24)); eingabeFeld.setForeground(Color.blue); c.add(eingabeFeld); label = new JLabel("Eingabe eines Passworts:"); label.setFont(new Font("Arial",Font.BOLD,24)); label.setForeground(Color.black); c.add(label); passwortFeld = new JPasswordField(); passwortFeld.setFont(new Font("Arial",Font.BOLD,24)); passwortFeld.setForeground(Color.blue); c.add(passwortFeld); label = new JLabel("Eingebener Text:"); label.setFont(new Font("Arial",Font.BOLD,24)); label.setForeground(Color.black); c.add(label); ausgabeFeld = new JTextField(10); ausgabeFeld.setFont(new Font("Arial",Font.BOLD,24)); ausgabeFeld.setForeground(Color.red); c.add(ausgabeFeld); // Listener für Text- und Passwortfeld // erzeugen und registrieren: TextListener lisText = new TextListener(); eingabeFeld.addActionListener(lisText); passwortFeld.addActionListener(lisText); // Komponenten anordnen und sichtbar machen: pack(); setLocation(100,100); setVisible(true); } // Definition der Listener-Klasse für Textfenster class TextListener implements ActionListener { // Die Methode actionPerformed() legt die Aktionen fest, // die nach Eingabe eines Texts in ein Textfenster // ausgefuehrt werden sollen: public void actionPerformed(ActionEvent e) { // in das Textfeld ausgabeText wird der Text uebernommen, // der in dem Textfeld steht, das die Eingabe ausgeloest hat ausgabeFeld.setText(e.getActionCommand()); } } } // Hauptprogramm zur Erzeugung der Oberflaeche: public class Texte { public static void main(String args[]) { new FrameFuerTf("Textfelder"); } }