ToUpper no Java?

5 respostas
P

Pessoal,

Existe um TOUPPER em Java?

Em uma tela eu tenho vários JTexts, e gostaria que mesmo os usuário digitando minúsculo automaticamente já passar para maiúsculo.

Aproveitando o tópico com outra pergunta:

Como pego o conteúdo de um JCheckBox se ele foi selecionado ou não, para eu poder gravar em um arquivo?

Obrigado! 8)

5 Respostas

P

Existe sim um toUpper, na classe String: toUpperCase(). Entretanto, para fazer o que você quer, será necessário implementar seu próprio PlainDocument, seguindo este artigo será até tranquilo: http://www.guj.com.br/java.tutorial.artigo.29.1.guj - Outra solução mais “gambi”, é ir transformando o texto do Jtextfield a cada tecla pressionada (implementando o evento keyPressed).

Quanto a outra dúvida, se não me engano é: seuCheckBox.isSelected()!

Até

T

Veja um exemplo aqui:

http://java.sun.com/j2se/1.5.0/docs/api/javax/swing/JTextField.html

P

Estou usando este exemplo:

public class UpperCaseField extends JTextField {
	 
    public UpperCaseField(int cols) {
        super(cols);
    }

    protected Document createDefaultModel() {
        return new UpperCaseDocument();
    }

    static class UpperCaseDocument extends PlainDocument {

        public void insertString(int offs, String str, AttributeSet a) 
            throws BadLocationException {

            if (str == null) {
                return;
            }
            char[] upper = str.toCharArray();
            for (int i = 0; i < upper.length; i++) {
                upper[i] = Character.toUpperCase(upper[i]);
            }
            super.insertString(offs, new String(upper), a);
        }
    }
}

Porém do meu JText não consigo acessar essa classe, não funciona nem com reza brava.
E não está aceitano o UpperCaseDocument não sei porque.

:roll:

T
    • Não é para acessar a classe, e sim trocar os JTextFields por UpperCaseFields.
    • Você precisa acrescentar mais imports no seu programa.
J

Bom e eu quero … usar essa mesma classe em uma JTextArea

como devo aplicar nesse caso

Criado 7 de agosto de 2008
Ultima resposta 23 de ago. de 2008
Respostas 5
Participantes 4