Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.java.programmer > #13417
| From | markspace <-@.> |
|---|---|
| Newsgroups | comp.lang.java.programmer |
| Subject | Re: inputvalidation of inputdialog |
| Date | 2012-04-05 09:31 -0700 |
| Organization | A noiseless patient Spider |
| Message-ID | <jlkhcq$l53$1@dont-email.me> (permalink) |
| References | <4f7d94b5$0$7609$9b4e6d93@newsspool1.arcor-online.net> |
On 4/5/2012 5:48 AM, Mark Sudau wrote:
> I already thought of a KeyListener but using a KeyListener makes it
> difficult to validate the length of a regular expression.
A key listener is probably the wrong direction entirely. For length,
make a Document and set the text field's document to that, or use a
document listener, or use a DocumentFilter.
Something like (untested):
DocumentFilter filter = new DocumentFilter() {
private final int MAX_LEN = 42;
public void insertString( FilterBypass fb,
int offset, String string, AttributeSet att )
{
if( fb.getDocument().getLength() + string.getLength()
< MAX_LEN )
{
fb.insertString( offset, string, attr );
}
}
public void replaceString( FilterBypass fb,
int offset, String string, AttributeSet att )
{
fb.replaceString( offset, string, attr );
}
};
In general, use the validators that Java already provides, don't roll
your own.
<http://docs.oracle.com/javase/tutorial/uiswing/misc/focus.html>
(You have to scroll down a bit to get to the part about validating
input. It's there though, honest.)
Other links:
<http://docs.oracle.com/javase/tutorial/uiswing/components/formattedtextfield.html>
<http://docs.oracle.com/javase/7/docs/api/javax/swing/InputVerifier.html>
<http://docs.oracle.com/javase/7/docs/api/javax/swing/text/DocumentFilter.html>
PlainDocument is an AbstractDocument that you could easily extend. I
think PlainDocument is the model used for all plain text fields in Swing
as well as the unformatted (plain) text areas.
<http://docs.oracle.com/javase/7/docs/api/javax/swing/text/PlainDocument.html>
Back to comp.lang.java.programmer | Previous | Next — Previous in thread | Find similar | Unroll thread
inputvalidation of inputdialog Mark Sudau <news@sudau.net> - 2012-04-05 14:48 +0200 Re: inputvalidation of inputdialog markspace <-@.> - 2012-04-05 09:31 -0700
csiph-web