package erp.arquitetura.gui;
import javax.swing.text.AttributeSet;
import javax.swing.text.BadLocationException;
import javax.swing.text.PlainDocument;
@SuppressWarnings("serial")
public final class EntradaMaiuscula extends PlainDocument {
private final int iMaxLength;
public EntradaMaiuscula(int maxlen) {
this.iMaxLength = maxlen;
}
@Override
public void insertString(int offset, String str, AttributeSet attr) throws BadLocationException {
if (str == null) { return; }
str = str.replaceAll("\\s+", " ");
if (this.iMaxLength <= 0) {
super.insertString(offset, str.toUpperCase(), attr);
return;
}
int ilen = this.getLength() + str.length();
if (ilen <= this.iMaxLength) {
super.insertString(offset, str.toUpperCase(), attr);
}
}
}
// OUTRA CLASSE
fieldCodigo = new JTextField();
fieldCodigo.setDocument(new EntradaMaiuscula(10));
add(fieldCodigo);
Gente esse negócio de não poder responder a própria pergunta mata a gente. Eu fiz algumas modificações e isso poderia ajudar a me atender.
— vpmaciel1981 3 meses atrás