I would suggest to set the Document of the JTextField with an extended PlainDocument in which you override the insertString method. (Also nice to limit the size...)
Something like:
Document doc = new PlainDocument() {
@Override
public void insertString(int offs, String str, AttributeSet attr)
throws BadLocationException {
String newstr = str.replaceAll(" ", ""); // could use "\s" instead of " "
super.insertString(offs, newstr, attr);
}
@Override
public void replace(int offs, int len, String str, AttributeSet attr)
throws BadLocationException {
String newstr = str.replaceAll(" ", ""); // could use "\s" instead of " "
super.replace(offs, len, newstr, attr);
}
};
textField.setDocument(doc);
EDIT:
replace
must also be overrided/implemented!
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…