então galera, usei os exemplos citados acima e num funcionou muito não.
Daí pesquisando um pouco mais sobre java eu descobri o evento onChange, e a classe Document
Com isso eu “QUASE” resolvi meu problema, deixando o código assim:
[code]//declaração do button e JTextField
JTextField caixa;
JButton clique;
//(…) após mais umas declarações do meu formulário e tals…pq na verdade são várias caixas que precisarei, para compô-lo e preciso que todas estejam preenchidas pro botão ficar habilitado.
caixa = new JTextFiedl (15);
caixa.getDocument().addDocumentListener(
new DocumentListener(){
String texto;
public void insertUpdate (DocumentEvent evento){
clique.setEnabled(true);
}
public void removeUpdate (DocumentEvent evento){
texto = caixa.getText();
if(texto.length()<1)
clique.setEnabled(false);
}
public void changedUpdate (DocumentEvent evento){}
}
);
clique = new JButton(“Salvar”);
clique.setEnabled(false);
//(…)
[/code]
Bom este foi o trecho do código.
Percebi que ao mudar a comparação “if” pra “menor que 6”, se conter menos que seis caracteres minha caixa, o botão salvar não fica habilitado. Mas o estranho foi que ao repetir o mesmo processo para as outras caixas, fica como “se tivesse 1” o “6” que pus como comparação é como se não existisse. E ainda não consegui criar a dependência de “todas” as caixas estarem “escritas” para soh então habilitar o botão. Ou seja, se pelo menos uma, “mesmo que cada uma receba em separado o código acima”, é suficiente para habilitar o botão.
O que pensei, foi criar uam especie de ouvidor nas caixas e criar uma classe interna pra tratamento deste evento. Mas não sei como começar lógicamente este processo com DocumentListener?
Seria igual aos feitos com “actionlistener” por exemplo?
Se alguem conseguir visualizar minha idéia e ele tiver possibilidade de estar correta, peço que me dê este caminho, pelo menos lógicamente, pra eu encerrar esta questão e dúvida.
Caso minha idéia esteja errada, peço o “clareamento” de idéias pra eu eliminar este problema.
Uma coisa que estou notando, é que isso pode render um bom tutorial, visto que é uma coisa comum de se ver em algumas aplicações gráficas. E um tanto quanto mais simples em outras linguagens, pelo que andei conversando com amigos que programam em outras LPs.