// EntryTextField.java
import java.io.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.awt.image.*;
import javax.imageio.*;
import javax.swing.*;
public class EntryTextField extends JFrame
implements ActionListener, KeyListener {
private JPanel gui;
private JPanel textfeld;
private JButton close;
private JTextField text;
private JLabel countA;
private JButton neu;
private int count;
private int count2;
private String derText;
public static void main(String [] args) throws IOException {
EntryTextField go = new EntryTextField();
go.setTitle("Nur 100 Buchstaben");
go.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
go.setSize(500,250);
go.setResizable(false);
go.setVisible(true);
}
EntryTextField() {
makeGui();
}
public void makeGui() {
gui = new JPanel();
textfeld = new JPanel();
close = new JButton("Fenster schließen");
close.addActionListener(this);
gui.add(close);
add(BorderLayout.SOUTH,gui);
text = new JTextField("", 40);
text.addKeyListener(this);
textfeld.add(text);
countA = new JLabel("100 Zeichen verbleibend");
textfeld.add(countA);
neu = new JButton("Neu");
neu.addActionListener(this);
textfeld.add(neu);
neu.setVisible(false);
add(BorderLayout.CENTER,textfeld);
}
public void actionPerformed(ActionEvent event) {
if (event.getSource() == close) {
System.exit(0);
}
if (event.getSource() == neu) {
text.setText("");
text.setEditable(true);
neu.setVisible(false);
countA.setText("100 Zeichen verbleibend");
}
}
public void keyReleased(KeyEvent ev) {
if (ev.getSource() == text) {
derText = text.getText();
count2 = derText.length();
count = 100 - count2;
countA.setText(count + " Zeichen verbleibend");
}
if (ev.getSource() == text && count == 0) {
Toolkit tk = Toolkit.getDefaultToolkit();
tk.beep();
text.setEditable(false);
neu.setVisible(true);
}
}
public void keyPressed(KeyEvent ev) { }
public void keyTyped(KeyEvent ev) { }
}