Ciao a tutti,
vi pongo la seguente questione.
Sto cercando di costruire un oggetto JToolbar costituito da una serie di icone.
Ad ognuna delle icone (istanze di classe ImageIcon) voglio associare la stessa azione, differenziando però l'esecuzione della azione per via di una variabile che passo come parametro:
un elemento (istanza di classe Element).
Per intenderci, immaginate una toolbar con due icone, una raffigurante un cerchio, l'altra un quadrato. Cliccando su una delle due icone, il metodo che viene richiamato è lo stesso (quindi si effettueranno una serie di passaggi di settaggi vari), ma cliccando sull'icone col cerchio, l'elemento rappresentato avrà un contorno a forma circolare, cliccando su quello col quadrato, si avrà un elemento con contorno a forma quadrata.
Ho cercato di risolvere il problema con un ciclo for:
for(int j=0;j<iande_index;j++)
{
toolbar.add(
new AbstractAction("",
iconList[j])
{
public void actionPerformed(ActionEvent e)
{
Object TEMP = e.getSource();
System.out.println(" L'azione è stata avviata " +
" sull'oggetto " + TEMP);
MyCellInfo alberoGeneal[] =
new MyCellInfo[100];
PropertyType localprops[] =
new PropertyType[100];
int mniIndex = 0;
int propind = 0;
String n = elementList[j].getAttribute("name");
...
}
(questo dopo aver scritto la parte di codice che posiziona le icone sulla toolbar), ma il problema è che mi assegna a tutte le icone la stessa azione, in particolare quella ottenuta dall'ultimo ciclo del FOR.
Come risolvere? Esiste qualche interessante alternativa? Avevo pensato a MouseClicked...