PDA

Visualizza la versione completa : [java] chiamata di un metodo di un'altra classe


speriamobene
11-05-2005, 23:33
ciao raga.
la base della programmaz ad oggetti è creare l'istanza della classe e poi usare l'oggetto ed i metodi.

ho un caso 'particolare' che però non so come risolvere.

ho una classe principale main, Classe(), che mi crea un frame swing principale. all'interno di un jpanel inserisco alcune info ed alcuni pulsanti.
ebbene: ho la necessità che ad un clic di un bottone si 'apra' un secondo panel (dichiarato nella classe main e messo setvisible(false) ).

il problema reale e' che non posso dichiarare 'public static' il secondo panel xkè contiene molti oggetti private di main.
non posso nemmeno creare un oggetto Classe() m=new Classe(); e richiamare il panel2 con m.panel2()... perchè avrei un altro oggetto senza nessuna interazione col primo.

a questo punto mi e Vi chiedo: come fare da una classe a richiamare un metodo di una classe principale che contiene il main?

dekdek
12-05-2005, 00:24
- Usi il Singleton Pattern.
- Esporti un'interfaccia.
- Crei un controllore che fa da intermediario, e ascolta i componenti che gli mandano degli eventi.
- Alla fine, se hai bisogno di chiamare del codice cui non riesci ad arrivare, vuol dire che probabilmente l'hai messo nel posto sbagliato, quindi lo sposti in un'altra classe.

Loading