Dante41
Messages postés103Date d'inscriptionsamedi 13 mars 2004StatutMembreDernière intervention15 juillet 2009
-
29 oct. 2004 à 11:44
Dante41
Messages postés103Date d'inscriptionsamedi 13 mars 2004StatutMembreDernière intervention15 juillet 2009
-
29 oct. 2004 à 13:03
Avant tout je voudrais m'excuser pour mes questions à la c** de débutant en java...
J'ai une question qui pourrait etre pour vous tout aussi c** mais qui pour moi est très très importante.
J'aimerais avoir des variables globales a toutes les classes de mon programmes... J'ai trouvé une solution qui me parait bien moche pour avoir des variables globales et des methodes globales...
class Globals
{
public Globals()
{
}
public boolean intropasse=false;
}
class Paneau extends JPanel
{
public Paneau()
{
gl = new Globals();
tv = new ImageIcon("tv.gif");
logo = new ImageIcon("logo.gif");
}
public void paintComponent(Graphics g)
{
super.paintComponent(g);
g.drawImage(tv.getImage(),0,0,null);
if (!gl.intropasse)g.drawImage(logo.getImage(),220,220,null);
}
private ImageIcon tv, logo;
public Globals gl;
}
class Fenetre extends JFrame
{
public Fenetre()
{
setTitle("Test");
setBounds(192,144,640,500);
setResizable(false);
Container contenu = getContentPane();
pan = new Paneau();
pan.setBackground(Color.black);
contenu.add(pan);
pan.gl.intropasse=false;
}
private Paneau pan;
}
//Classe pour lancer
public class Qvgs
{
public static void main(String[] args)
{
Fenetre fen = new Fenetre();
fen.setVisible(true);
}
}
La solution trouvée est de faire une classe Globals appelée dans la dernière classe créée du programme (ici la classe paneau).
Toutes les autres classes peuvent y accèder... Mais c'est moche !
Vous avez une solution ?
Merci d'avance !
@++
Dante41 (ou Vengeur41 ca dépend de l'humeur)
"Un myope qui lit sur les lèvres entend mieux lorsqu'il porte des lunettes",Phillipe Geluck
toffe12
Messages postés53Date d'inscriptionvendredi 12 septembre 2003StatutMembreDernière intervention23 septembre 20051 29 oct. 2004 à 12:58
salut,
pour des variables globale j'utilise egalement une classe mais sans constructeur qui contient toutes mes variables globales avec leur accesseurs pour les modifiers ou pour avoir leur valeur.
Par contre pas besoin de l'appeler dans ta classe la plus haute tu l'appelle quant tu veux.
pour un label par exemple, pour une couleur, .....
Dante41
Messages postés103Date d'inscriptionsamedi 13 mars 2004StatutMembreDernière intervention15 juillet 2009 29 oct. 2004 à 13:03
Il me retourne une erreur quand je la declare dans (par exemple) la classe de base (Qvgs) et que je veux y accèder avec (par exemple) la classe Fenetre...
Pourrais tu me dire comment faire en (si tu veux) adaptant "l'exemple" que j'ai donné ?
Dante41 (ou Vengeur41 ca dépend de l'humeur)
"Un myope qui lit sur les lèvres entend mieux lorsqu'il porte des lunettes",Phillipe Geluck