Página Inicial do Fórum > Java Básico

Ajuda para ativar e desativar button.



Criar novo tópico   Responder tópico
  1. Comment Arrow

    Publicado em: 09/04/2009 23:18:44

    Pessoal o seguinte ya estou terminando meu primer programinha em java e estou na fase de detalhes, estou querendo fazer o seguinte, eu tenho algumas telas com campos onde o usuario teria que prenche-los, para evitar que o usuario de um click no button aceptar antes de te-los prenchidos quero so ativar este buton cuando os campos não estivessem vacios... o que eu tinha feito era o seguinte, se o usuario da click no button aceptar o programinha verificava se os campos estavam prenchidos, de no estar mostrava uma JOptionPane informado que campo estava vacio, agora quero mudar esse equema e so quero ativar o button aceptar se todos os campo obrigatorios estivesem prenchidos, falo todos mas na verdade so são dois campos. gostaria que alguem me orientasse o me mostrasse algum exemplo, os campos que são obrigatorios são JTextField.

    Anticipo o agradecimento.




  1. vfpamp
    Posts:6098


    Comment Arrow

    Publicado em: 09/04/2009 23:18:44

    Utilize um KeyListener para cada campo que você precisa validar.

    Cada evento disparado compara todos os componentes e habilita o botão se estiver OK.
    _________________
    Vitor Pamplona
    http://vitorpamplona.com
    @vitorpamplona


  1. Comment Arrow

    Publicado em: 09/04/2009 23:18:44

    Ja fiz, agora não funciona como eu quero, tal vez não me expressei corretamente, levo 10 meses escrevendo portugues e aindfa tenho alguns erros, bom, voltando ao tema, o que eu queria mesmo é o seguinte no caso que eu escreva una letra dentro do JTextFiel que se ative e se eu deleto esa letra do JtextField o button se desative de novo, eu consegui ativar o buttton ao escrever mas se escrevo uma letra e logo dou backspace ou seja limpo a letra escreta o button não se desavilita, fica avilitado pelo que tem que ser algum evento que evalue constantetemente o campo JTextField. Aqui vai meu codigo a ver se estou perto o tenho que utilizar outro evento.


    Pensei que fosse a condição do If tentei assim e tampouco deu certo.




  1. krismorte
    Posts:380


    Comment Arrow

    Publicado em: 09/04/2009 23:18:44

    tu quer que o botão volte a desabilitar quando as letras forem apagadas, por exemplo é simples

    troque o parâmetro do if de

    txtNome.getText() != null

    para

    txtNome.getText().length() >0

    public void testaBtnGravar(){
    if (txtNome.getText().length() >0 ){
    btnAlterar.setEnabled(true);
    }else {
    btnAlterar.setEnabled(false);
    }
    }

    Assim quando você apagar as letras o .length() volta a 0 e o botão desabilita
    Blz!
    _________________
    Krisnamourt da Silva Correia Filho
    MCITP - SQL Server 2005




  1. krismorte
    Posts:380


    Comment Arrow

    Publicado em: 09/04/2009 23:18:44

    OBS: Você tem que adicionar um key listener em ambos os textfield.
    _________________
    Krisnamourt da Silva Correia Filho
    MCITP - SQL Server 2005




  1. Relacionados





Novo tópico   Responder tópico     Índice do forum -> Java Básico