Pegar nome de Jbutton

boa noite

gostaria de saber por favor como pegar o nome da variavel de um Jbutton, estou usando o modo grafico do NetBeans, gostaria de fazer isso para usar o listener…

e teria como fazer ao invez de varios ifs, um switch case com e.getsource();

Obrigado

  1. Não se “pega o nome da variável do JButton”. Até porque você pode ter várias variáveis referenciando o mesmo JButton (afinal de contas, isto é Java, não C++).
    O indicado é você implementar o ActionListener já diretamente no JButton.
  2. switch / case não aceita objetos. (A exceção são enums , a partir da versão 5, e constantes Strings, a partir da versão 7 do Java. )

[quote=entanglement]1) Não se “pega o nome da variável do JButton”. Até porque você pode ter várias variáveis referenciando o mesmo JButton (afinal de contas, isto é Java, não C++).
O indicado é você implementar o ActionListener já diretamente no JButton.
2) switch / case não aceita objetos. (A exceção são enums , a partir da versão 5, e constantes Strings, a partir da versão 7 do Java. )
[/quote]

verdade, essa questão de referencia, a string segue este detalhe, pelo menos me disseram uma vez isso, q vc mantem o nome do objeto criado mas a referencia muda…

como assim implementar direto no JButton…
No construtor da classe usar ja no metodo listener o q chama ele

o que fiz para resolver foi usar o switch com text do button

De qualquer maneira, não se deve tomar uma ação sobre um JButton com base no texto que está escrito nele.

  1. Você pode ter uma tela com vários botões com o mesmo texto
  2. O texto pode mudar e você acaba sem querer tendo um problema do tipo “o botão X que funcionava antes não funciona mais”.

[quote=entanglement]De qualquer maneira, não se deve tomar uma ação sobre um JButton com base no texto que está escrito nele.

  1. Você pode ter uma tela com vários botões com o mesmo texto
  2. O texto pode mudar e você acaba sem querer tendo um problema do tipo “o botão X que funcionava antes não funciona mais”.

[/quote]

o q poderia eu fazer então…

ficar com varios ifs entao

obrigado

Pergunta - por que é que não usa o recurso do Netbeans que permite atribuir um listener ao botão diretamente? Deixe que ele sabe melhor que você o que deve ser feito.

A propósito, você tem uma quantidade de botões variável ou ela é fixa para essa tela?

[quote=entanglement]Pergunta - por que é que não usa o recurso do Netbeans que permite atribuir um listener ao botão diretamente? Deixe que ele sabe melhor que você o que deve ser feito.

A propósito, você tem uma quantidade de botões variável ou ela é fixa para essa tela?
[/quote]

como usar esse recuso do netbeans…

estou usando fixo, pq na verdade comecei a estudar GUI a 2 semanas…

e meu professor mostrou isso e achei legal

[quote=macario1983][quote=entanglement]Pergunta - por que é que não usa o recurso do Netbeans que permite atribuir um listener ao botão diretamente? Deixe que ele sabe melhor que você o que deve ser feito.

A propósito, você tem uma quantidade de botões variável ou ela é fixa para essa tela?
[/quote]

como usar esse recuso do netbeans…

estou usando fixo, pq na verdade comecei a estudar GUI a 2 semanas…

e meu professor mostrou isso e achei legal[/quote]

Cara se quer dar um evento ao botão, clique com o botão direito em cima do mesmo, vai em eventos, e escolha o tipo de evento que vc quer…e pronto o próprio netbeans, prepara toda a sintaxe, vc só preenche com o “EFEITO DESEJADO”