paulyoank
Messages postés3Date d'inscriptionmardi 7 décembre 2010StatutMembreDernière intervention22 mars 2012
-
17 mars 2012 à 02:01
paulyoank
Messages postés3Date d'inscriptionmardi 7 décembre 2010StatutMembreDernière intervention22 mars 2012
-
19 mars 2012 à 20:58
0je voudrais créer une application java qui ouvre au préalable une fenetre dans laquelle il ia une barre de menu avec les deux sous menus Fichier et Edition comportant tout deux respectivement les item Nouveau, Fermer et Rechercher,Modifier,Supprimer. De telle sorte qu'un clic sur nouveau ouvre une autre fenetre correspondant a un formulaire ayant les champs Matricule,Nom,Prénom,Sexe,Classe pour rentrer des informations sur un étudiant. Bien sur Fermer doit me permettre de quitter l'application et les items de Edition d'ouvrir une sorte de pop-up ou on me demande juste le Matricule pour afficher les informations sur une personne.Il s'agit d'un annuaire.Je dois le connecter plus tard a une base de données.
Voici mon code java:
package annuaire_kome;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
/**
*
* @author KHALIFA
*/
public class Annuaire_Kome extends JFrame implements ActionListener
{
private final JMenuBar barreMenus;
private final JMenu Fichier, Edition ;
private final JMenuItem Nouveau, Fermer, Modifier, Supprimer, Rechercher;
public Annuaire_Kome()
{
setTitle("ANNUAIRE");
setSize(400,300);
/*création de la barre de menus*/
barreMenus =new JMenuBar();
setJMenuBar(barreMenus);
/*création du menu Fichier et ses sous menus*/
Fichier = new JMenu ("Fichier");
barreMenus.add(Fichier);
Nouveau = new JMenuItem ("Nouveau");
Fichier.add (Nouveau);
Nouveau.addActionListener (this);
Fermer = new JMenuItem ("Fermer");
Fichier.add (Fermer);
Fermer.addActionListener (this);
/*création du menu Edition avec ses sous menus*/
Edition = new JMenu ("Edition");
barreMenus.add(Edition);
Modifier = new JMenuItem ("Modifier");
Edition.add (Modifier);
Modifier.addActionListener (this);
Rechercher = new JMenuItem ("Rechercher");
Edition.add (Rechercher);
Rechercher.addActionListener (this);
Supprimer = new JMenuItem ("Supprimer");
Edition.add (Supprimer);
Supprimer.addActionListener (this);
}
public void ActionPerformed (ActionEvent e)
{
Object source = e.getSource();
if (source == Nouveau)
{
class Formulaire extends JFrame implements ActionListener
{
public Formulaire()
{
setTitle("FORMULAIRE D'ENREGISTREMENT");
JButton OKbutton = new JButton ("OK");
JButton Cancelbutton = new JButton ("Effacer");
Container Content = getContentPane();
Content.setLayout(new GridLayout(6,1));
JPanel P1 = new JPanel();
P1.add(OKbutton);
P1.add(Cancelbutton);
JPanel P2 = new JPanel();
JLabel L1 = new JLabel("Matricule");
JTextField T1 = new JTextField(10);
P2.add(L1);
P2.add(T1);
JPanel P3 = new JPanel();
JLabel L2 = new JLabel("Nom");
JTextField T2 = new JTextField(20);
P3.add(L2);
P3.add(T2);
JPanel P4 = new JPanel();
JLabel L3 = new JLabel("Prénom");
JTextField T3 = new JTextField(20);
P4.add(L3);
P4.add(T3);
JPanel P5 = new JPanel();
JLabel L4 = new JLabel("Sexe");
JRadioButton A = new JRadioButton("M", true);
JRadioButton B = new JRadioButton("F");
P5.add(L4);
P5.add(A);
P5.add(B);
JPanel P6 = new JPanel();
JLabel L5 = new JLabel("Classe");
JTextField T5 = new JTextField(10);
P6.add(L5);
P6.add(T5);
Content.add(P2);
Content.add(P3);
Content.add(P4);
Content.add(P5);
Content.add(P6);
Content.add(P1);
OKbutton.addActionListener(this);
Cancelbutton.addActionListener(this);
A.addActionListener(this);
B.addActionListener(this);
}
@Override
public void actionPerformed(ActionEvent e) {
throw new UnsupportedOperationException("Not supported yet.");
}
}
}
if (source == Fermer){
this.setVisible(false);
}
if (source == Rechercher){
}
}
@Override
public void actionPerformed(ActionEvent e) {
throw new UnsupportedOperationException("Not supported yet.");
}
}
class test{
public static void main (String args[])
{
Annuaire_Kome fen = new Annuaire_Kome();
fen.setVisible(true);
}
}
N.B:jai pas encore codé pour Edition.je voulais voir si c'est bon jusque la.
Quand je nettoie et construit dans netbeans je nai aucune erreur.
Mais jai ce message d'erreur a l'execution:
java.lang.NoSuchMethodError: main
Exception in thread "main" Java Result: 1
GÉNÉRATION TERMINÉE (durée totale 0 secondes)
AIDEZ MOI S'IL VOUS PLAIT.
Otobox
Messages postés14Date d'inscriptionsamedi 17 mars 2012StatutMembreDernière intervention10 juin 2012 17 mars 2012 à 16:54
Salut paulyoank J'ai une petite suggestion, essaye de faciliter ton travail par exemple au lieu de faire cela :
/*class Formulaire extends JFrame implements ActionListener{
public Formulaire()
{
setTitle("FORMULAIRE D'ENREGISTREMENT");
JButton OKbutton = new JButton ("OK");
JButton Cancelbutton = new JButton ("Effacer");
Container Content = getContentPane();
Content.setLayout(new GridLayout(6,1));
JPanel P1 = new JPanel();
P1.add(OKbutton);
P1.add(Cancelbutton);
JPanel P2 = new JPanel();
JLabel L1 = new JLabel("Matricule");
JTextField T1 = new JTextField(10);
P2.add(L1);
P2.add(T1);
JPanel P3 = new JPanel();
JLabel L2 = new JLabel("Nom");
JTextField T2 = new JTextField(20);
P3.add(L2);
P3.add(T2);
JPanel P4 = new JPanel();
JLabel L3 = new JLabel("Prénom");
JTextField T3 = new JTextField(20);
P4.add(L3);
P4.add(T3);
JPanel P5 = new JPanel();
JLabel L4 = new JLabel("Sexe");
JRadioButton A = new JRadioButton("M", true);
JRadioButton B = new JRadioButton("F");
P5.add(L4);
P5.add(A);
P5.add(B);
JPanel P6 = new JPanel();
JLabel L5 = new JLabel("Classe");
JTextField T5 = new JTextField(10);
P6.add(L5);
P6.add(T5);
Content.add(P2);
Content.add(P3);
Content.add(P4);
Content.add(P5);
Content.add(P6);
Content.add(P1);
OKbutton.addActionListener(this);
Cancelbutton.addActionListener(this);
A.addActionListener(this);
B.addActionListener(this); }
*/
Essaye de créer une nouvelle classe Formulaire :
public class Formulaire extends JPanel implements ActionListener{
public Formulaire(){
tu met ton code ex...
}
public void actionPerformed(ActionEvent e) {
Object Source = e.getSource();
if(){}
}
et pour finir tu part a la classe Annuaire_Kome
if (source == Nouveau)
{
tu met ici un nouveau constructeur de la classe Formulaire
Formulaire f = new Forumlaire();
}
et pour fermer if (source == Fermer){
System.exit(0);
}
Je suis entrain de faire le même projet j'espére que je pourrais t'aider