¿Cómo se agrega un ActionListener a un JButton en Java?

private JButton jBtnDrawCircle = new JButton("Circle"); private JButton jBtnDrawSquare = new JButton("Square"); private JButton jBtnDrawTriangle = new JButton("Triangle"); private JButton jBtnSelection = new JButton("Selection"); 

¿Cómo agrego detectores de acción a estos botones, para que desde un método principal pueda llamar a actionperformed en ellos, para que cuando se les haga clic pueda llamarlos en mi progtwig?

Dos caminos:

1. Implemente ActionListener en su clase, luego use jBtnSelection.addActionListener(this); Más adelante, tendrá que definir un elemento, acción public void actionPerformed(ActionEvent e) . Sin embargo, hacer esto para múltiples botones puede ser confuso, ya que el método actionPerformed tendrá que verificar el origen de cada evento ( e.getSource() ) para ver de qué botón proviene.

2. Use clases internas anónimas:

 jBtnSelection.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { selectionButtonPressed(); } } ); 

Más tarde, tendrá que definir selectionButtonPressed() . Esto funciona mejor cuando tiene varios botones, porque sus llamadas a métodos individuales para manejar las acciones están justo al lado de la definición del botón.

El segundo método también le permite llamar al método de selección directamente. En este caso, puede llamar a selectionButtonPressed() si también ocurre otra acción, como cuando se activa un temporizador o algo así (pero en este caso, su método se llamaría algo diferente, tal como selectionChanged() ).

Su mejor apuesta es revisar los tutoriales de Java Swing , específicamente el tutorial sobre Botones .

El fragmento de código corto es:

 jBtnDrawCircle.addActionListener( /*class that implements ActionListener*/ ); 

No lo seguí del todo, pero para agregar un oyente de acción, simplemente llame a addActionListener (desde el botón Resumen). Si esto no responde totalmente a su pregunta, ¿puede proporcionar más detalles?