• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Jeanne Boyarsky
  • Ron McLeod
  • Paul Clapham
  • Liutauras Vilda
Sheriffs:
  • paul wheaton
  • Rob Spoor
  • Devaka Cooray
Saloon Keepers:
  • Stephan van Hulst
  • Tim Holloway
  • Carey Brown
  • Frits Walraven
  • Tim Moores
Bartenders:
  • Mikalai Zaikin

Throw JFormattedTextField away

 
Greenhorn
Posts: 29
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I've created two classes to eliminate de code bloat needed to create a JFormattedTextField that still does half the job.

The classes are: FormattedTextField and NumericTextField

What it does? Well, NumericTextField do:

1 - Not let the user input invalid characters in the field (e.g.: letters, and more than one decimal separator '.'). The input is verified at each key typed... so, it is always beautiful.
2 - Accept ActionEvent's properly (try to use them with JFormattedTextField and see what you get)
3 - Return the value as int, float, double, Integer, Float, Double and String... an returns the integer and decimal portions (before '.' and after it)
4 - Let you put a text in front of the input and after it. Something like: U$, or ($ 123.00 canadian dollars), or 323%, and the cursor only acts after the text of the front and before the trailing text.
5 - Separate the thousands automatically (if you want). So when you type, the thousand separator is inserted as needed, while you are typing.
6 - Show the empty space that can be filled. (e.g. U$ ...,..), and you can set the character that marks the empty space
7 - IT JUST WORKS!!! And you don't need any code bloat to make it work.

And FormattedTextField do:
1 - Accept ActionEvent's (something that JFormattedTextField can't do)
2 - Not let you to jump spaces
3 - Return the text without the mask (if text is 12/12/2000, returns 12122000)
4 - Has a method that says if the field is totally filled
5 - Uses a, c and d as mask for alphanumeric chars, any character and digit chars, respectively. So, you can use a mask like: (#ddd) where ddd are three digits and # is just a character like /, -, whatever.
6- Show the mask if you want, or insert the mask while you type if you want
7 - Not need that you create a lot of code to do a simple thing.

Interested? Click here and throw the JFormattedTextField into the trash can.

If you have any suggestion, opinion or criticism, mail me: germanobax@yahoo.com.br
 
reply
    Bookmark Topic Watch Topic
  • New Topic