Formatierung eines JTextField

MarkusG

Mitglied
Hallo alle zusammen,

gibt es eine Möglichkeit ein JTextField, oder eine dafür geeignete Komponente, zu formatieren, dass ausschließlich Dezimalzahlen eingegeben werden können bzw. dass zur Laufzeit eingegebene andere Zeichen automatisch entfernt werden? Ich möchte in einer JTablespalte grundsätzlich nur Dezimalzahlen stehen haben. Diese möchte/muss ich allerdings als String abspeichern. Dem DefaultCellEditor weise ich ein Textfeld zu. Muss ich in diesem Fall selbst machen, da ich vorher die Zeichenanzahl des Textfeldes begrenze. Gibt es eine Möglichkeit eine Formatierung zuzuweisen?


Mfg. Markus
 
Vielen Dank :)

War die richtige Fährte. Ich habe folgendes als Editor sowie als Renderer verwendet:

... = new JFormattedTextField(new MaskFormatter("##,##"));

Allerdings habe ich jetzt ein für mich unerklärliches Problem :rolleyes:

Wenn ich einen in der JTable dargestellten Datensatz selektiere und den Wert in der Zelle mit dem MaskFormatter ändere, steht danach nichts mehr in der Zelle...

Beispiel: Anfangs stand im JFormattedTextField die Zahl 77,0
Wenn ich diese Zahl in 30 ändere steht nach verlassen der Zelle " , " in der
Zelle...

Kennt jemand dieses Phänomen und weiß Abhilfe?


Danke,

Mfg. Markus
 
Zurück