Conta CLick - Non conta il primo click

di il
2 risposte

Conta CLick - Non conta il primo click

Buongiorno programmatori,
mi sto esercitando con i JButton e quindi sono partito dal classico "Conta CLick".

Funziona tutto ma il primo CLick non lo conta.
Sapreste spiegarmi per quale motivo?

Allego il mio esercizio


package pulsanti;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import javax.swing.JFrame;
import javax.swing.JButton;

/**
 *
 * @author Andrea
 */
public class Pulsanti extends JFrame {

    JFrame f;
    JButton b;
    int count = 1;
    
    public Pulsanti() {

    b = new JButton("Evento"  + " " + count); 
    b.setBounds(50, 30, 100, 100);
    b.setVisible(true);
    b.setMnemonic(KeyEvent.VK_B);
    b.setEnabled(true);
    
    b.addActionListener(new ActionListener() {

    @Override
    public void actionPerformed(ActionEvent e) {
        
        b = (JButton) e.getSource();
        b.setText("Evento" + " " + count);
        count++;

    }

});
           
        f = new JFrame();
        f.setTitle("Pulsante evento");
        f.setVisible(true);
        f.setLayout(null);
        f.setSize(200, 200);
        f.setLocationRelativeTo(null);
        f.setResizable(false);
        f.setDefaultCloseOperation(EXIT_ON_CLOSE);
        f.add(b);
    }

    public static void main(String[] args) {
        Pulsanti gfx = new Pulsanti();
    }
}
Ringrazio anticipatamente per le risposte.
Buona giornata,
Andrea

2 Risposte

  • Re: Conta CLick - Non conta il primo click

    Ciao, dando un occhiata veloce non noto errori, tranne che per visualizzare il primo click dovresti prima incrementare count e dopo visualizzare.
    Saluti
    Danilo
  • Re: Conta CLick - Non conta il primo click

    Ciao Danko,

    hai perfettamente ragione infatti funziona alla perfezione.

    Non sono ancora svezzato e non ragiono con la logica giusta.

    Ti ringrazio per l'aiuto e posto la porzione di codice esatto per quanto forse sia poco rilevante per tanti.
    
    b = (JButton) e.getSource();
    //prima incremento
    count++;
    //e poi visualizzo
    b.setText("Evento" + " " + count);
    
    Ciao,

    Andrea
Devi accedere o registrarti per scrivere nel forum
2 risposte