Salve ragazzi,
da oggi sono bloccato su questo problema. Sto facendo un programma in cui un JFrame deve far vedere un certo numero variabile di JButton.
Questa è la parte di codice che uso per creare i JButton :
codice:
for(int i=0;i<s.length;i++) {
jb1=new JButton(new ImageIcon(((new ImageIcon(""+path+""+s[i]+".png",""+s[i])).getImage()).getScaledInstance(75, 75, java.awt.Image.SCALE_SMOOTH)));
jb1.setText(s[i]);
jp.add(jb1);
}
In questo ciclo estraggo da un array delle stringhe che poi andranno a comporre la path per inserire l'immagine nel JButton. Poi faccio .setText e aggiungo al JPanel i JButton.
Io voglio aggiungere gli actionListener al JButton, ma mi dice che i JButton devono essere dichiarati final. Ovviamente questo comporta un errore nella loro stessa creazione nel ciclo for. Ho provato a cercare un pò su internet, ma non ho trovato nessuna risposta finora.
Questa è la domanda: per caso c'è un metodo per aggirare questo errore oppure dovrò definire ogni bottono a sè stante(non vorrei fosse quest'ultimo caso poichè sono più di 100 xD )?
Grazie in anticipo per il vostro aiuto