Application java graphique

paulyoank Messages postés 3 Date d'inscription mardi 7 décembre 2010 Statut Membre Dernière intervention 22 mars 2012 - 17 mars 2012 à 02:01
paulyoank Messages postés 3 Date d'inscription mardi 7 décembre 2010 Statut Membre Dernière intervention 22 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.

2 réponses

Otobox Messages postés 14 Date d'inscription samedi 17 mars 2012 Statut Membre Dernière intervention 10 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
0
paulyoank Messages postés 3 Date d'inscription mardi 7 décembre 2010 Statut Membre Dernière intervention 22 mars 2012
19 mars 2012 à 20:58
ca ne marche pas...envoie moi tous les codes de chacunes de tes classes...dans kelle classe se trouve le main?
0
Rejoignez-nous