Limitacion del numero de caracteres en JTextField
Hola, a ver si podiais decirme como puedo limitar el numero de caracteres que se pueden escribir en unJTextField, y tambien si es posible bloquear para ese JTextField el pegado de cosas con Control+v
Un saludo hasta otra
Un saludo hasta otra
import javax.swing.text.*;
public class JTextFieldTexto extends JTextField {
public JTextFieldTexto (int longitudMaxima) {
setDocument(new DocumentTexto (longitudMaxima));
}
}
public class DocumentTexto extends PlainDocument {
private int longitudMaxima_;
public DocumentTexto (int longitudMaxima) {
longitudMaxima_ = longitudMaxima > 0 ? longitudMaxima : -1;
}
public void insertString(int offs, String str, AttributeSet atts) throws BadLocationException {
if (longitudMaxima_ != -1) {
// Los caracteres que excedan de la longitud maxima se truncan
if (getLength() > longitudMaxima_) {
super.remove(longitudMaxima_, getLength() - longitudMaxima_);
}
}
}
}
public class JTextFieldTexto extends JTextField {
public JTextFieldTexto (int longitudMaxima) {
setDocument(new DocumentTexto (longitudMaxima));
}
}
public class DocumentTexto extends PlainDocument {
private int longitudMaxima_;
public DocumentTexto (int longitudMaxima) {
longitudMaxima_ = longitudMaxima > 0 ? longitudMaxima : -1;
}
public void insertString(int offs, String str, AttributeSet atts) throws BadLocationException {
if (longitudMaxima_ != -1) {
// Los caracteres que excedan de la longitud maxima se truncan
if (getLength() > longitudMaxima_) {
super.remove(longitudMaxima_, getLength() - longitudMaxima_);
}
}
}
}
