Objet du main java

didy_gwatinik Messages postés 358 Statut Membre -  
didy_gwatinik Messages postés 358 Statut Membre -
Bonjour,
Mon problème est très simple et à mon avis très bête mais bon, comment faire pour accéder à un objet qui est dans mon main à partir de mes autres classes : j'aimerai accéder à appli à partir de JMenuLivre : voilà un appercu de mon code :

public class Principal {
 static void main(String[] args) {
		// TODO Auto-generated method stub
		Appli appli= new Appli();
	}

}


public class Appli extends JFrame{
	private ArrayList<Livre> listLivre;
	private  JFrame jFrame;
	public PanAbout pane = new PanAbout();
//constructeur et reste


public class JMenuLivre extends JMenu {
	private JFrame jfFrame;
	public JMenuLivre () {
//....
}


En gros j'aimerai pouvoir faire dans le constructeur de JMenuLivre le traitement suivant : jfFrame=appli.getJFrame(); Je ne vois pas comment faire!

Merci pour votre aide
A voir également:

1 réponse

batoune Messages postés 558 Statut Membre 96
 
sa fait longtemp que j'ai pas fait de JAVA mais pour que JMenuLivre est acces a des méthodes de Appli il me semble que il faut que lorsque tu crer JMenuLivre,que tu lui passe une reference vers Appli
0
didy_gwatinik Messages postés 358 Statut Membre 80
 
Il n'y a aucun moyen de pouvoir utiliser directement l'objet de mon main?
0
batoune Messages postés 558 Statut Membre 96 > didy_gwatinik Messages postés 358 Statut Membre
 
Ben sa dépent, tu crée JMenuLivre depuis ou?
0
didy_gwatinik Messages postés 358 Statut Membre 80 > batoune Messages postés 558 Statut Membre
 
Dans ma classe Appli
0
batoune Messages postés 558 Statut Membre 96 > didy_gwatinik Messages postés 358 Statut Membre
 
Dans ce cas tu dois avoir un truc qui ressemble a sa au moment ou tu crer un objet JMenuLivre :
JMenuLivre jml= new JMenuLivre();

Si mes souvenirs sont bon, tu doit pouvoir faire sa :
JMenuLivre jml= new JMenuLivre(this); //ici normalement "this" correspond a Appli

et du coup dans ta classe JMenuLivre, quand tu déclare tes variables tu fais
par exemple :
private Appli app;

et tu fait ton constructeur comme sa :
public JMenuLivre (Appli app) { // "Appli app" correspond au this passé en parametre
this.app = app;
//.....
}

et la si je me suis pas planter tu devrais avoir acces a toute les methodes de ton Objet Appli depuis JMenuLivre en fesant :
app.laMethodeDeAppliQueTuVeux();

Alors pare contre comme je l'ai dit sa fait longtemp que j'ai pas fait de JAVA donc c'est possible que sa ne marche pas tout a fait et qu il y est des truc a modifier dans ce que j'ai ecris, mais j'espere que sa pourra t'aider a résoudre ton probleme quand meme
0
didy_gwatinik Messages postés 358 Statut Membre 80 > batoune Messages postés 558 Statut Membre
 
Très très fort, ça marche! merci beaucoup, pour quelqu'un qui n'a pas de JAVA depuis longtemps, je m'incline j'aimerai en savoir autant :).
Encore merci!!
0