import java.awt.BorderLayout;
import java.awt.Font;
import java.awt.Frame;
import java.awt.TextArea;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
public class TestGUIAWT extends Frame {
public TestGUIAWT() throws Exception {
addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
TextArea eingabeFeld = new MyTextArea(10, 30);
add(BorderLayout.CENTER, eingabeFeld);
eingabeFeld.setFont(new Font("Comic Sans MS", Font.PLAIN, 20));
setSize(300, 200);
setVisible(true);
}
public static void main(String[] args) throws Exception {
new TestGUIAWT();
}
}
class MyTextArea extends TextArea implements KeyListener {
int position = 0;
public MyTextArea(int i, int j) {
super(i, j);
addKeyListener(this);
};
public void keyPressed(KeyEvent e) {
}
public void keyReleased(KeyEvent e) {
}
public void keyTyped(KeyEvent e) {
System.out.println(
"position: "
+ position
+ ", key: "
+ e.getKeyCode()
+ " - "
+ e.getKeyChar()
+ " - "
+ ((int) e.getKeyChar())
+ " --- "
+ getCaretPosition());
if (position > 5) {
int pos = getCaretPosition();
insert("\n", pos);
position = 0;
} else {
position++;
}
}
}