RESOLVIDO AJUDA pega click do botão

Pessoal estou com uma duvida eu quero clicar na categoria e pegar o id do produto
exibindo esse jRadioButton da certo faço um for e percorro ate achar o que esta marcado e dentro da propriedade dele eu tenho escrito o ID que eu coloquei a cor de brando para não exibir
mas eu queria eliminar esse radiobuttton e deixar so para clicar no produto alguma ideia

Esse produto está em que tipo de elemento?

jLabel

Por que não troca para JButton? Seria o mais adequado, não?

uai pode ser, tava pensando adicionar todos os buttons criados em uma ArrayList

depois percorrer o name de cada um e dentro desse loop ter um if(botaodalista.getSource())
sera que da ?

na verdade seria assim

public void actionPerformed(ActionEvent e) {
if (e.getSource() == b1) {
System.out.println(“B1”);
} else if (e.getSource() == b2) {
System.out.println(“B2”);
}
}

Para que tanta complicação?
Se você estudar um pouco mais a fundo, vai descobrir que pode, a partir de vários JButton, chamar o mesmo listener.
A partir disso, você pega a action (basicamente o nome do botão) e verifica qual é o produto.

Sim eu fiz isso

darla_machado vc diz fazer algo assim ?

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JOptionPane;

public class ButtonHandler implements ActionListener {
private JButton ok, cancela;

public ButtonHandler(JButton ok, JButton cancela){
	this.ok = ok;
	this.cancela = cancela;
}

public void actionPerformed(ActionEvent evento) {
	if(evento.getSource() == ok)
			JOptionPane.showMessageDialog(null, "O botão OK foi clicado");
		
	if(evento.getSource() == cancela)
		JOptionPane.showMessageDialog(null, "O botão CANCELA foi clicado");
}

}

Mais ou menos isso.
Troque os ifs por switch. Mais elegante

Mas seguinte tenho uma duvida como eu vou fazer esse if(evento.getSource() == ok)
porque esses botão não são estaticos são dinamicos uma hora em so 3 outra hora vem 10 depende do cadastro de categorias

Foi ai que pensei no Array list percorrendo ate o if bater ? ou vc pensou de outra forma ?

Deixa eu ver se eu lembro, faz anos que não brinco com swing.
O objeto de ActionEvent possui um método, o getActionCommand(), ele retorna o actionCommand do elemento que requisitou a ação.
Então, para cada JButton, você pode definir o actionCommand específico e, então, validar no switch qual foi o botão que fez a chamada (obtendo, assim, o produto selecionado).

Exemplo

Pensei de outra forma, o array é muito complexo.

Eu faria algo como

JButton prd1 = new JButton();
prd1.addActionListener(oTalDoListenerQueFalei);
prd1.setActionCommand("produto1");

JButton prd2 = new JButton();
prd2.addActionListener(oTalDoListenerQueFalei);
prd2.setActionCommand("produto2");

//E no eventlistener
String cmd = event.getActionCommand();
switch(cmd) {
    case "produto1":
       //Faz algo
      break;
    case "produto2":
       //Faz outro algo
      break;
}

Só que darlan eu entendi so que aqui String cmd = event.getActionCommand(); eu estou pegando
O ActionComand do que foi clicado ate ai tudo bem mas nessa parte do case “produto1” como vou obter cada botão para comparar com o String cmd ?

Esses botões serão dinâmicos?
Se sim, você pode criar um mapa onde o actionCommand será a chave e o produto pode ser o valor. Aí, quando você ler essa informação, faz um get no map e obtém o produto em questão.

Sim serão dinamicos

Map<String, Produto> prods = new HashMap<String, Produto>();
//Cada JButton criado

prods.put(produto.getNome(), produto);
btnProduto.setActionCommand(produto.getNome());

darlan_machado quando vc tiver um tempo pode me ajudar via teamviewer eu preciso muito disso e acho que não entendi muito bem

Se consegue ou não ?