JTextField Prsonalizado

Hola a todos

Sou novo aqui no forum, ja consegui fazer algumas coisas com java para desktop e agora quero criar classes para reutilização do codigo, quero iniciar com uma classe de campos EX:

JTextField:

Limitar tamanho do campo.

Apenas maiusculas.

Mudar cor de fundo ao receber e perder o focu.

De inicio seria isso, ja consegui fazer uma para limitar o tamanho e passar tudo para maiusculas conforme codigo abaixo.
import java.awt.event.FocusEvent;
import javax.swing.text.*;

public class ClasseCampos extends PlainDocument {
private int limit;
// optional uppercase conversion
private boolean toUppercase = false;

ClasseCampos(int limit) {
    super();
    this.limit = limit;
}

ClasseCampos(int limit, boolean upper) {
    super();
    this.limit = limit;
    toUppercase = upper;
}
    
@Override
public void insertString (int offset, String  str, AttributeSet attr) throws BadLocationException {
    if (str == null) return;
    if ((getLength() + str.length()) <= limit) {
        if (toUppercase) str = str.toUpperCase();
        super.insertString(offset, str, attr);
    }
}

    public void focusLost(FocusEvent e) {
    throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
}

}

Preciso apenas de um exemplo simples para iniciar, outra coisa tenho como criar um classe para todos os campos (Cep, Data, Moeda, etc) tudo no mesmo .Class

Um abraço

Eu recomendaria algo como uma hierarquia de classes. Por exemplo:

TextFieldPersonalizado
    -> TextFieldMoeda
    -> TextFieldCEP
    -> TextFieldCPF
    -> TextFieldCNPJ
    -> TextFieldData
    -> TextFieldPIS
    -> TextFieldRG
    -> TextFieldPlacaCarro
    -> TextFieldRenavam

e assim por diante.

Hola entanglement

Me desculpe mas ainda estou no inicio disso tudo, você não tem algum exemplo, pode ser bem simples de uma classe que faça aqueles 3 controles citados acima, apenas para eu ter como base, conseguindo fazer essa primeira funcionar ai me viro com o resto.

Um abraço

Boa a ideia, mas use a TagCode ok ?

[quote=nilton_cpm]Hola entanglement

Me desculpe mas ainda estou no inicio disso tudo, você não tem algum exemplo, pode ser bem simples de uma classe que faça aqueles 3 controles citados acima, apenas para eu ter como base, conseguindo fazer essa primeira funcionar ai me viro com o resto.

Um abraço[/quote]

Não crie uma classe só que faz tudo. É melhor criar 3 classes diferentes, cada uma especializada em fazer uma determinada coisa.

Não tenho um exemplo aqui