quarta-feira, 30 de abril de 2008

JTextField em UpperCase - 2.a Possibilidade

Mais um post sobre como deixar um texto em uma JTextField em miusculo de uma forma diferente da anterior. Neste codigo de exemplo acontece a conversão para uppercase somente quando uma outra letra é digitada, ficando assim visivel para o usuario o processo.

Segue código:

import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import javax.swing.JTextField;
import javax.swing.SwingUtilities;
import org.jdesktop.swingx.JXFrame;

public class testeUpperCase2 extends JXFrame {

JTextField nome, endereco, bairro;

public testeUpperCase2(){
super("Teste Upper Case");
setSize(400,400);
setLayout(null);
setLocationRelativeTo(null);

nome = new JTextField();
// adiciona a propriedade de alterar para upper case quando a proxima letra é digitada
nome.addKeyListener(this.keyUpperCase);
nome.setBounds(10, 10, 200, 20);
add(nome);

endereco = new JTextField();
endereco.addKeyListener(this.keyUpperCase);
endereco.setBounds(10, 40, 200, 20);
add(endereco);

bairro = new JTextField();
bairro.addKeyListener(this.keyUpperCase);
bairro.setBounds(10, 70, 200, 20);
add(bairro);
}

// metodo que cria a listener que encarregara de alterar para upper case quando adicionada nos textfields
private KeyListener keyUpperCase = new KeyListener() {

public void keyTyped(KeyEvent e) {
}

public void keyPressed(KeyEvent e) {
JTextField source = (JTextField) e.getSource();
String data = source.getText();
source.setText("");
source.validate();
data = data.toUpperCase();
source.setText( data );
source.validate();
}

public void keyReleased(KeyEvent e) {
}
};

public static void createGuiAndShow(){
testeUpperCase2 teste = new testeUpperCase2();

teste.setDefaultCloseOperation(JXFrame.EXIT_ON_CLOSE);
teste.setVisible(true);
}

public static void main(String args[]){
SwingUtilities.invokeLater(new Runnable() {
public void run() {
createGuiAndShow();
}
});
}
}


:: Referência

GUJ - User: keller

Um comentário:

Anônimo disse...

Aeww Grande Douglas.. SWingX Bagaça... Continue Assim cara Mantendo o Blog Atualizado.
Abraz