Java problème changement de JPanels dans JFra
Fermé
david-sa
Messages postés
2
Date d'inscription
dimanche 11 avril 2010
Statut
Membre
Dernière intervention
12 avril 2010
-
12 avril 2010 à 18:57
TheRedXPeace - 4 juil. 2010 à 15:20
TheRedXPeace - 4 juil. 2010 à 15:20
A voir également:
- Java problème changement de JPanels dans JFra
- Waptrick java football - Télécharger - Jeux vidéo
- Jeux java itel football - Télécharger - Jeux vidéo
- Changer de dns - Guide
- Java apk - Télécharger - Langages
- Changement d'écriture - Guide
2 réponses
Bonjour, voila la solution la plus adaptée
import java.awt.Color;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;
public class EtudiantFrame extends JFrame{
private JFrame fenetre1;
private JPanel panel_ajout;
private JPanel panel_suppression;
//Menu
private JMenuBar menu;
private JMenu options;
private JMenuItem ajout;
private JMenuItem suppression;
//Ajouter
private JPanel info_menu_der;
private JPanel info_nom;
private JPanel info_nom1;
private JPanel info_prenom;
private JPanel info_note1;
private JPanel info_note2;
private JPanel info_note3;
private JComboBox menu_der;
private JTextField nom;
private JTextField nom1;
private JTextField prenom;
private JTextField note1;
private JTextField note2;
private JTextField note3;
private JButton ajouter;
String[] sections = { "ING1LM", "ING1JV", "SIGL2", "SRT2","TRSE2","SIGL3","SRT3","TRSE3"};
public EtudiantFrame(){
fenetre1 = new JFrame();
panel_ajout = new JPanel();
panel_suppression = new JPanel();
//Menu
menu = new JMenuBar();
options = new JMenu("Options");
ajout = new JMenuItem("Ajout");
suppression = new JMenuItem("Suppression");
info_menu_der = new JPanel();
info_nom = new JPanel();
info_nom1 = new JPanel();
info_prenom = new JPanel();
info_note1 = new JPanel();
info_note2 = new JPanel();
info_note3 = new JPanel();
menu_der = new JComboBox(sections);
nom = new JTextField(20);
nom1 = new JTextField(20);
prenom = new JTextField(20);
note1 = new JTextField(5);
note2 = new JTextField(5);
note3 = new JTextField(5);
ajouter = new JButton("Ajouter");
}
public void init(){
fenetre1.setTitle("Etudiants");
//modification1
//fenetre1.setLayout(new GridLayout(0,1));
fenetre1.setLayout(null);
fenetre1.setSize(300,240);
fenetre1.setLocationRelativeTo(null);
fenetre1.setResizable(true);
fenetre1.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//Menu
menu.add(options);
options.add(ajout);
options.add(suppression);
fenetre1.setJMenuBar(menu);
//infos etudiant
info_menu_der.add(new JLabel("Section : "));
info_menu_der.add(menu_der);
info_nom.add(new JLabel("Nom : "));
info_nom.add(nom);
info_nom1.add(new JLabel("Nom : "));
info_nom1.add(nom1);
info_prenom.add(new JLabel("Prenom : "));
info_prenom.add(prenom);
info_note1.add(new JLabel("note1 : "));
info_note1.add(note1);
info_note2.add(new JLabel("note2 : "));
info_note2.add(note2);
info_note3.add(new JLabel("note3 : "));
info_note3.add(note3);
// onglet ajout
panel_ajout.setSize(300,240);
panel_ajout.setLayout(new BoxLayout(panel_ajout, BoxLayout.Y_AXIS));
panel_ajout.add(info_menu_der);
panel_ajout.add(info_nom);
panel_ajout.add(info_prenom);
panel_ajout.add(info_note1);
panel_ajout.add(info_note2);
panel_ajout.add(info_note3);
panel_ajout.add(ajouter);
panel_ajout.setVisible(false);
panel_suppression.setVisible(false);
fenetre1.add(panel_ajout);
fenetre1.add(panel_suppression);
//onglet suppression
panel_suppression.setSize(300,240);
panel_suppression.setLayout(new BoxLayout(panel_suppression, BoxLayout.Y_AXIS));
panel_suppression.add(info_nom1);
//Evènements
ajouter.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
System.out.println("test ok");
}
});
ajout.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
panel_suppression.setVisible(false);
panel_ajout.setVisible(true);
}
});
suppression.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
panel_ajout.setVisible(false);
panel_suppression.setVisible(true);
System.out.println("test supp");
}
});
fenetre1.setVisible(true);
}
public static void main(String[] args) {
new EtudiantFrame().init();
}
}
import java.awt.Color;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;
public class EtudiantFrame extends JFrame{
private JFrame fenetre1;
private JPanel panel_ajout;
private JPanel panel_suppression;
//Menu
private JMenuBar menu;
private JMenu options;
private JMenuItem ajout;
private JMenuItem suppression;
//Ajouter
private JPanel info_menu_der;
private JPanel info_nom;
private JPanel info_nom1;
private JPanel info_prenom;
private JPanel info_note1;
private JPanel info_note2;
private JPanel info_note3;
private JComboBox menu_der;
private JTextField nom;
private JTextField nom1;
private JTextField prenom;
private JTextField note1;
private JTextField note2;
private JTextField note3;
private JButton ajouter;
String[] sections = { "ING1LM", "ING1JV", "SIGL2", "SRT2","TRSE2","SIGL3","SRT3","TRSE3"};
public EtudiantFrame(){
fenetre1 = new JFrame();
panel_ajout = new JPanel();
panel_suppression = new JPanel();
//Menu
menu = new JMenuBar();
options = new JMenu("Options");
ajout = new JMenuItem("Ajout");
suppression = new JMenuItem("Suppression");
info_menu_der = new JPanel();
info_nom = new JPanel();
info_nom1 = new JPanel();
info_prenom = new JPanel();
info_note1 = new JPanel();
info_note2 = new JPanel();
info_note3 = new JPanel();
menu_der = new JComboBox(sections);
nom = new JTextField(20);
nom1 = new JTextField(20);
prenom = new JTextField(20);
note1 = new JTextField(5);
note2 = new JTextField(5);
note3 = new JTextField(5);
ajouter = new JButton("Ajouter");
}
public void init(){
fenetre1.setTitle("Etudiants");
//modification1
//fenetre1.setLayout(new GridLayout(0,1));
fenetre1.setLayout(null);
fenetre1.setSize(300,240);
fenetre1.setLocationRelativeTo(null);
fenetre1.setResizable(true);
fenetre1.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//Menu
menu.add(options);
options.add(ajout);
options.add(suppression);
fenetre1.setJMenuBar(menu);
//infos etudiant
info_menu_der.add(new JLabel("Section : "));
info_menu_der.add(menu_der);
info_nom.add(new JLabel("Nom : "));
info_nom.add(nom);
info_nom1.add(new JLabel("Nom : "));
info_nom1.add(nom1);
info_prenom.add(new JLabel("Prenom : "));
info_prenom.add(prenom);
info_note1.add(new JLabel("note1 : "));
info_note1.add(note1);
info_note2.add(new JLabel("note2 : "));
info_note2.add(note2);
info_note3.add(new JLabel("note3 : "));
info_note3.add(note3);
// onglet ajout
panel_ajout.setSize(300,240);
panel_ajout.setLayout(new BoxLayout(panel_ajout, BoxLayout.Y_AXIS));
panel_ajout.add(info_menu_der);
panel_ajout.add(info_nom);
panel_ajout.add(info_prenom);
panel_ajout.add(info_note1);
panel_ajout.add(info_note2);
panel_ajout.add(info_note3);
panel_ajout.add(ajouter);
panel_ajout.setVisible(false);
panel_suppression.setVisible(false);
fenetre1.add(panel_ajout);
fenetre1.add(panel_suppression);
//onglet suppression
panel_suppression.setSize(300,240);
panel_suppression.setLayout(new BoxLayout(panel_suppression, BoxLayout.Y_AXIS));
panel_suppression.add(info_nom1);
//Evènements
ajouter.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
System.out.println("test ok");
}
});
ajout.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
panel_suppression.setVisible(false);
panel_ajout.setVisible(true);
}
});
suppression.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
panel_ajout.setVisible(false);
panel_suppression.setVisible(true);
System.out.println("test supp");
}
});
fenetre1.setVisible(true);
}
public static void main(String[] args) {
new EtudiantFrame().init();
}
}
Bonjour,
Cette solution fonctionne-t-il réellement ? Parce que pour mon cas, ça ne fonctionne pas. Cependant, je ne veux pas changer mais supprimer un panel. Mais le problème c'est après la suppression du panel.
En effet, lorsque je supprime un panel, les autres composants ne s'affichent pas (ou supprimés ?).
J'ai essayé d'utiliser la technique des JLayaredPane mais ça fonctionne pas non plus.
Si vous avez une idée de l'erreur, ça sera super sympa.
Cordialement,
TheRedXPeace !
Cette solution fonctionne-t-il réellement ? Parce que pour mon cas, ça ne fonctionne pas. Cependant, je ne veux pas changer mais supprimer un panel. Mais le problème c'est après la suppression du panel.
En effet, lorsque je supprime un panel, les autres composants ne s'affichent pas (ou supprimés ?).
J'ai essayé d'utiliser la technique des JLayaredPane mais ça fonctionne pas non plus.
Si vous avez une idée de l'erreur, ça sera super sympa.
Cordialement,
TheRedXPeace !