bonjour à tous,
débutant en java, j'ai réalisé une petite interface graphique minimum :
une fenêtre, définie dans la classe MyWindow.
un panel défini dans la classe mon_panneau_bas.
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 package Mon_Interface; import javax.swing.JFrame; @SuppressWarnings("serial") public class MyWindow extends JFrame { public MyWindow () { // mon constructeur de fenetre super (); this.isAlwaysOnTop(); this.setVisible(true); this.setSize(500, 500); this.setLocationRelativeTo(null); this.setDefaultCloseOperation(DISPOSE_ON_CLOSE); } }
La classe de démarrage main :
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 package Mon_Interface; import java.awt.Color; import java.awt.Dimension; import javax.swing.JPanel; @SuppressWarnings("serial") public class mon_panneau_bas extends JPanel { public mon_panneau_bas () { this.setBackground(Color.YELLOW ); this.setPreferredSize(new Dimension (100,100)); } }
Le problème est que cela fonctionne de manière aléatoire semble-t-il.
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 package Mon_Interface; import java.awt.BorderLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.JButton; public class start4 { public static void main(String[] args) { //Réalisation de la fenetre et affichage MyWindow ma_fenetre = new MyWindow(); mon_panneau_bas panneau_bas_1 = new mon_panneau_bas () ; // Création des boutons JButton btnV = new JButton ("Valider"); JButton btnQ = new JButton ("Quitter"); JButton btnD = new JButton ("Démarrer"); // Création des listners btnD.addActionListener(new ActionListener() { @Override // méthode qui implémente une interface public void actionPerformed(ActionEvent e) { System.out.println(("le bouton Démarrer a été pressé!")); } }); btnV.addActionListener(new ActionListener() { @Override// méthode qui implémente une interface public void actionPerformed(ActionEvent e) { System.out.println(("le bouton Valider a été pressé!")); } }); btnQ.addActionListener(new ActionListener() { @Override// méthode qui implémente une interface public void actionPerformed(ActionEvent e) { System.out.println(("le bouton Quitter a été pressé!")); } }); // mise en place des boutons sur le panel panneau_bas_1.add( btnD ); panneau_bas_1.add( btnV ); panneau_bas_1.add( btnQ ); // Mise en place du panel sur la fenetre ma_fenetre.add (panneau_bas_1, BorderLayout.SOUTH) ; } }
La fenêtre est générée à chaque fois, mais le panneau jaune en bas avec les boutons, pas toujours hélas...
Si je mets un seul bouton, ça semble fonctionner à chaque fois...
Ça me parait étrange que le fonctionnement puisse être aléatoire....
Mon erreur est peut-être évidente pour un initié d'Eclipse.
Merci...
Partager