
Originariamente inviata da
gigiachiara
Credo che il metodo più immediato siaquello di fare un check. Prima di cambiare controlla quale immagine è caricato nel pulsante, a seconda di ciò che è caricato cambi l'immagine.
ciao
L'idea potrebbe essere giusta, e come tu mi hai suggerito ho apportato una modifica, ma il problema non viene risolto perchè l'ActionListener lo fa valere solo per l'ultimo bottone. Altre idee?
MODIFICA:
codice:
....
class Seleziona implements ActionListener{
private char f;
private int p;
private Icon disp;
public Seleziona(char f,int p,Icon disp){
this.f=f;
this.p=p;
this.disp=disp;
}
public void actionPerformed(ActionEvent e){
if(disp==libero)
bPosto.setIcon(selezionato);
if(disp==selezionato)
bPosto.setIcon(occupato);
}
...
for(char i='A';i<65+file;i++){
for(int j=1;j<=posti;j++){
pPosti=new JPanel();
bPosto=new JButton(libero);
pPosti.add(bPosto);
p.add(pPosti);
ActionListener listSelezione=new Seleziona(i,j,bPosto.getIcon());
bPosto.addActionListener(listSelezione);
}
}