Enabled jtextField

9 respostas
T

pessoal alguem pode me dizer o q está errado?

public CalculadoraComboBox() {

initComponents();
    if (jTextField1.getText()==" ") jButton1.setVisible(false);
}

eu quero deixar o botao desabilitado, até que seja digitado no textField o login(ou qualquer outra coisa). agradeço de antemao!

9 Respostas

diogofabri

Qual erro ta dando???
tenta usar:

Button.disable();

Axo que eh mais adequado para o seu caso…
Abraço!

Diego_Fontenele

Isso mesmo, também acho que não terá erro, se der errado posta ai!!!

B

cara para comparar String o ideal é usar o equals.
o operador == até vai funcionar as vezes por causa do pool de String, mas não é o ideal ( e seguro ) que eu saiba.

Exemplo do equals:

String a = "abc";
 String b = "abc";
 if(a.equals(b)) {
    //cod.
 }

no teu caso tu tem que usar o setEnable do button

if("".equals(jTextField1.getText()){
    jButtin.setEnable(true);
 }
Jeferson_Manetti

tiferli:
pessoal alguem pode me dizer o q está errado?

public CalculadoraComboBox() {

initComponents();
    if (jTextField1.getText()==" ") jButton1.setVisible(false);
}

eu quero deixar o botao desabilitado, até que seja digitado no textField o login(ou qualquer outra coisa). agradeço de antemao!

tenta assim…

public CalculadoraComboBox() {
        
        initComponents(); 

       // o legal seria vc colocar este code em um evento do jTextField1 =)
       // dai qnd o evento relacionado ao textfield for disparado ele verifica se 
       // o tamanha do getText() seja maior q 0 (tem alguma coisa escrita) dai vc habilita seu jbutton
        if (jTextField1.getText().length()  > 0){
             jButton1.setEnable(true);
        }

    }

blz

T

caros senhores, agradeço a todos que forneceram suas ajudas, mas infelizmente não deram certo. tentei todas.

usei esta dentre as outras:

public Login() {

initComponents();

if (jTextField1.getText().length()  > 0)

jButton1.setEnabled(true);

}
tambem no TextFielf   o:

if (jTextField1.getText()==" ")

jButton1.setEnabled(false);

mas o problema nao foi resolvido, ou seja o botao continua habilitado independente que eu digite algo ou nao.
alguma outra solução???

Giboty

tiferli:
pessoal alguem pode me dizer o q está errado?

public CalculadoraComboBox() {

initComponents();
    if (jTextField1.getText().equals("")) jButton1.setVisible(false);
}

eu quero deixar o botao desabilitado, até que seja digitado no textField o login(ou qualquer outra coisa). agradeço de antemao!

berg.pb

BL?

cara…

//evento ao perder o foco do textfield

private void jTextField1FocusFocusLost(FocusEvent event) {
		if (jTextField1.getText().equals(""))
			jButton1.setEnabled(false);
                else
                        jButton1.setEnabled(true);
		
}

//ou

private void jTextField1FocusFocusLost(FocusEvent event) {
		if (jTextField1.getText().isEmpty())
			jButton1.setEnabled(false);
                else
                        jButton1.setEnabled(true);
		
	}

testei aqui e deu certo os 2.

se vc quer que o botão já esteja desabilitado, deixa ele no inicio como enable(false), e depois inverte a ordem.
o, agora, vc terá que verificar qual é o evento que vc quer q seja usado: ao preencher, ao perder foco, depois do evento de oturo componente…

abraços

M

vou aproveitar esse tópico que já está aberto pra nao precisar criar outro

estou com o mesmo problm, mas preciso que o botão fique habilitado logo quando for digitado algo no JTextField, não só quando perder o foco…
deixei um setEnable(false); pra vir desabilitado jah

tentei com actionLisner não fui muito feliz hehe

se alguem souber, vlw ae

T

De fato, para você ver se o JTextField foi alterado por algum motivo (por exemplo, alguém teclou algo), você precisa usar um DocumentListener:

http://java.sun.com/javase/6/docs/api/javax/swing/JTextField.html - comece a ler de “In the JTextComponent based components, changes are broadcasted from the model via a DocumentEvent to DocumentListeners…”

Criado 25 de março de 2009
Ultima resposta 3 de abr. de 2009
Respostas 9
Participantes 9