La soluzione più diretta (e non stiamo ora a farci troppe questioni sul "design") sarebbe la seguente.Originariamente inviato da reginaldo
Ho un pannello A su cui vado ad aggiungere inizialmento un pannello B (contenuto in una classe diversa)
Su questo pannello sono presenti una JComboBox e due bottoni: Aggiugi ed ELimina.
Cliccando sul bottone Aggiungi si deve aggiungere sul pannello A un altro pannello B sotto al precedente precedentemente caricato. Mentre cliccando sul bottone Elimina si deve eliminare il pannello di tipo B caricato sul pannello A.
Poi una volta cliccato su un bottone presente sul pannello A voglio che vengono stampati a video tutti le selezioni fatte attraverso i vari JComboBox dei pannelli B caricati sul pannello A.
Il problema arriva perchè non riesco a gestire gli eventi?
I listener per i due pulsanti li puoi anche gestire dentro B e A può anche non "sapere" nulla di ciò.
Quando istanzi B gli passi il reference ad A. B quindi è in grado di invocare metodi di A quando gli pare. Quando clicchi su uno dei pulsanti, il listener in B invoca un metodo di A che fa quello che deve fare es. aggiungiPannello() o rimuoviPannello(this). In quest'ultimo caso, A deve sapere quale pannello B rimuovere ... appunto lo passi al metodo, è la istanza di B in quel momento!
A livello di design le due classi sono molto "accoppiate" tra di loro ... ma come ripeto, non facciamo grosse questioni di design, se questa soluzione ti va bene non vedo grossi problemi.
Se vogliamo fare i pignoli, a rigor di logica, non ha molto senso un pulsante "Aggiungi" in ogni pannello B, avrebbe senso un unico pulsante "Aggiungi" nel pannello A.