Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    Generare N Bottoni + ActionEvent

    Buongiorno,

    avrei necessita di creare N bottoni (N lo determino dalla lettura di alcuni dati a DB) per poi legare il tasto a un evento.
    Esempio un pulsante al click mostra una scritta, mentre un'altro pulsante un'altra scritta.
    Nella mia limitata conoscenza ho scritto questo:

    codice:
    for (int i = 0; i < listaPulsanti.size(); i++) { 
       pulsante = (Pulsante) listaPulsanti.get(i);
       jButton1 = new javax.swing.JButton(); 
       jButton1.setText(pulsante.getNome()); 
       jButton1.addActionListener(new java.awt.event.ActionListener() { 
            public void  actionPerformed(java.awt.event.ActionEvent evt) { 
                 System.out.println(pulsante.getNome()); } 
        });
    }
    Il codice funziona, genera i tasti (ognuno con il proprio nome), ma il problema che quando clicco viene stampato sempre l'ultimo valore. Deduco che sia dovuto al fatto che utilizzo sempre jButton1, però onestamente non mi viene in mente come poter fare, sempre che sia fattibile.

    Mi potreste gentilmente aiutare?

    Ringrazio Anticipatamente!

  2. #2
    Sbagli il riferimento all'interno dell'action listener (c'è verso di farlo anche con un solo listener senza crearne N....).
    codice:
    jButton1.addActionListener(new java.awt.event.ActionListener() { 
            public void  actionPerformed(java.awt.event.ActionEvent evt) { 
                 System.out.println(((JButton)evt.getSource()).getText()) ); 
             } 
        });

  3. #3
    Cavolo! Che stupido che sono stato!
    Ti ringrazio molto!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.