Problème de variable globale
Bonjour à tous,
J'ai 3 classes :
- UGRDataStorage conmprenant public static void main(String[] args)
- GraphicalUserInterface pour l'interface graphique
- Functions pour les traitements
Je souhaite séparer tout ce qui concerne l'interface graphique (classe GraphicalUserInterface) de ce qui concerne le traitement (classe Functions), raison pour laquelle j'ai créé ces 3 classes.
UGRDataStorage (classe principale) :
Code:
1 2 3 4 5 6 7 8 9 10
| public UGRDataStorage() {
// Constructeur
}
public static void main(String[] args) {
GraphicalUserInterface gui = new GraphicalUserInterface();
}
} |
GraphicalUserInterface (interface graphique) :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| import javax.swing.*;
import java.awt.event.*;
import java.awt.*;
public class GraphicalUserInterface extends JFrame {
...
...
// lors du cliquge d'un bouton par exemple
// on appelle la méthode Test() de la classe Functions
Functions.Test();
...
...
} |
Functions (classe de traitements) :
Code:
1 2 3 4 5 6 7
| public class Functions {
public static void Test() {
gui.textArea1.setText("Test");
}
} |
Le problème est que l'objet gui n'est pas reconnu (pas global ?) et que je ne peux accéder au textArea1 de cette manière pour en changer le contenu.
Par contre, çà marche si je fais gui.textArea1.setText("Test"); depuis la classe UGRDataStorage.
Comment faire pour que cela fonctionne depuis la classe Functions ?
Merci d'avance pour votre aide.