# JTextfield darf nur Zahlen annehmen



## Seeker (26. Mai 2009)

Hallo !

Ich habe eine Frage und zwar wollte ich wissen wie ich ein JTextField so erstelle das es nur Zahlen anerkennt. 
Ich bin nämlich momentan dabei einen Taschenrechner zu programmieren welcher die Zahlenwerte über die Buttons aber auch über die Tastatur erhalten kann. Das Problem ist jetzt wenn ich mein JTextfield "anzeige" so mache:

anzeige.setEditable(false);

dann funktioniert die eingabe über die tastatur nicht mehr und wenn ich es auf "True" schalte dann kann ich alles eingeben auf der Tastatur.

Wer cool wenn mir jemand helfen könnte

mfg

Seeker


----------



## Gast2 (26. Mai 2009)

How to Use Formatted Text Fields (The Java™ Tutorials > Creating a GUI with JFC/Swing > Using Swing Components)


----------



## Seeker (26. Mai 2009)

Jo danke für den Link nur leider funktioniert das trotzdem ned. So sieht der Anfang meines Konstruktors aus:

public Taschenrechner() {
		setLayout(new GridLayout(6, 1, 5, 5)); // 6 Rows, 1 Column, hgap, vgap
		Dimension d = Toolkit.getDefaultToolkit().getScreenSize();
		setLocation((d.width - getSize().width) / 3,
				  (d.height - getSize().height) / 3);
		anzeige = new JFormattedTextField(anzeigeFormat);
		anzeige.setFont(new Font("Arial", Font.BOLD, 18));
		anzeige.setEditable(true);
		anzeige.setText("0.0");
		anzeige.setBackground(Color.GREEN);
		anzeigeFormat = NumberFormat.getNumberInstance();


----------



## Verjigorm (26. Mai 2009)

http://www.java-forum.org/java-faq-beitraege/7213-jtextfield-dokumentarten.html


----------



## Gast2 (26. Mai 2009)

```
NumberFormat format = NumberFormat.getInstance();
        JFormattedTextField field = new JFormattedTextField(format);
        ((NumberFormatter)field.getFormatter()).setAllowsInvalid(false);
```


----------



## Gast2 (26. Mai 2009)

Jetzt kannst aber auch keine Punkte und kommas eingeben...


----------

