Bonjour, je débute en programmation Java et je rencontre quelques problèmes avec le développement
J'ai déja posté ce sujet sur le forum SWT, mais il s'agissait d'une erreur
d'applicationgs graphiques et j'aurais besoin de votre aide, rapidement, si possible.
J'ai développé une classe MaFenetre qui met en place une fenêtre Windows avec un menu (Fichier,
Edition) et une classe Fonctionnalites qui propose différentes méthodes destinés à l'application
(formulaire de saisie....)
Les méthodes de cette classe Fonctionnalités marchent correctement (elles ont été testés non pas
en tant que méthode de Fonctionnalités, mais au sein du constructeur de ma fenêtre).
Mais lorsque celle-ci sont des méthodes de Fonctionnalités, elle ne fonctionnent pas. En effet, quand
on les appellent, elle ne marchent et leur contenu (formulaire de saisie avec des JButtons, Jlabel,
JTextField) n'apparaient pas à l'écran
Faudrait t'il passer quelque chose en paramètre lors de l'appel de l'une des méthodes ????
Est-ce un problème lié à l'affectation à la fenêtre mère, getcontentpane ??????
Je ne pense pas que c'est trop dur, mais bon !
Merci d'avance
Voici, le code de mes classes (c'est un peu long, excusez moi)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70 import javax.swing.*; import java.awt.*; // nécéssaire pour la classe Container import java.awt.event.*; // nécessaire pour ActionListener, WindowListener import java.lang.*; public class MaFenetre extends JFrame implements ActionListener, WindowListener { public static void main (String[] args) { JFrame FenetreAppli = new MaFenetre(); FenetreAppli.setVisible(true); FenetreAppli.show(); } // Déclaration d'une variable funct de type Fonctionnalites Fonctionnalites funct; // Constructeur de la fenêtre public MaFenetre() { // Déclaration item Menu MenuItem mi; // Caractéristiques de la fenêtre setSize(350,200); setLocation(300,300); setTitle("Bibliothèque"); setResizable(false); addWindowListener(this); funct = new Fonctionnalites(); // Construction du menu MenuBar mb=new MenuBar(); setMenuBar(mb); //menu Fichier Menu m1=new Menu("Fichier"); mb.add(m1); // Item Quiter mi=new MenuItem("Quitter"); mi.addActionListener(this); m1.add(mi); // menu Edition Menu m2=new Menu("Edition"); mb.add(m2); // Item Ajouter Livre mi=new MenuItem("Ajouter Livres"); mi.addActionListener(this); m2.add(mi); //Item Lister Bibliotheque mi=new MenuItem("Lister Bibliothèque"); mi.addActionListener(this); m2.add(mi); // gestion evenementielle de la fermeture de la fenêtre addWindowListener(new WindowAdapter() {public void windowClosing(WindowEvent e) {System.exit(0);} } ) ; } public void actionPerformed(ActionEvent e) { if (e.getActionCommand().equals("Quitter")) {System.exit(0);} else if (e.getActionCommand().equals("Ajout Livres")) {funct.Ajout(); } }
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72 import javax.swing.*; import java.awt.*; // nécéssaire pour la classe Container import java.awt.event.*; // nécessaire pour ActionListener public class Fonctionnalites extends JFrame implements ActionListener, MouseListener { Bibliotheque biblio = new Bibliotheque(); // Déclération du panel JPanel panneauSaisie; JPanel panneauLabel; Container Fenetre1 = getContentPane(); // Fenetre1 : référence au contenu de la fenêtre1 // Déclaration des boutons de la fenêtre public JButton AddButton; // Déclaration des zones de saisie de la fenetre public JTextField SaisieTitre; public JTextField SaisieAuteur; // Déclaration des etiquettes private JLabel JLabelTitre; private JLabel JLabelAuteur; // Constructeur public Fonctionnalites() {addMouseListener(this); setBackground(Color.white);} // Méthode Ajout public void Ajout() { // JTextField SaisieTitre = new JTextField(10); SaisieAuteur = new JTextField(10); //JLabel JLabelTitre = new JLabel("Titre : ", JLabel.CENTER); JLabelAuteur = new JLabel("Auteur : ", JLabel.CENTER); // Boutons AddButton = new JButton("OK"); // Panels panneauSaisie = new JPanel(new GridLayout(5,1,5,5)); panneauLabel = new JPanel(new GridLayout(5,1,5,5)); // Fenêtre et mise en forme Fenetre1 Fenetre1.setLayout(new BorderLayout(15,15)); // Choix d'un gestionnaire de mise en forme Fenetre1.applyComponentOrientation( ComponentOrientation.LEFT_TO_RIGHT); // Ajouts des différents composants aux Panels panneauLabel.add(JLabelTitre); panneauSaisie.add(SaisieTitre); panneauLabel.add(JLabelAuteur); panneauSaisie.add(SaisieAuteur); //Fenetre1 Fenetre1.setVisible(true); Fenetre1.add(panneauLabel, BorderLayout.WEST); Fenetre1.add(panneauSaisie, BorderLayout.CENTER); Fenetre1.add(AddButton, BorderLayout.SOUTH); // Gestion Evenements AddButton.addActionListener(this); // La fenêtre écoute AddButton; }
Partager