The_VeryNovice | Bonjour, je débute en programmation Java et je rencontre quelques problèmes avec le développement
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
Code :
- 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 :
- 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;
- public JTextField SaisieGenre;
- public JTextField SaisieEditeur;
- public JTextField SaisieCodeISBN;
- // Déclaration des etiquettes
- private JLabel JLabelTitre;
- private JLabel JLabelAuteur;
- private JLabel JLabelGenre;
- private JLabel JLabelEditeur;
- private JLabel JLabelCodeISBN;
- // 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);
- //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;
- }
|
Message édité par The_VeryNovice le 02-06-2006 à 08:23:22
|