Ok, allora un ActionListener può essere appiccicato ad un sacco di cose, ma credo che così come vorresti applicarlo tu, ad un "disegno" non possa andare bene.
Però, utilizzando un Listener diverso (MouseListener), sul contenitore dei tuoi Rectangle e determinando il punto in cui avviene il click, e quindi a quale Rectangle sia interno, allora la cosa si può fare abbastanza agilmente.
In altre parole, definisci un tuo MouseAdapter (soprattutto se l'unico evento che ti interessa è il mouseClicked: in questo peschi le coordinate del click (MouseEvent definisce sia getX e getY che direttamente un getPoint), quindi sfrutti contains (int x, int y) o contains(Point p) di Rectangle per determinare quale rettangolo sia stato clickato.

Rispondi quotando