Bonjour, j'essaye en vain d'afficher des JButton sur une image de fond pour créer un menu de jeu mais je ne comprends pas d'où vient le problème..
Je m'explique, l'image de fond s'affiche mais pas mes JButton. Mais lorsque je passe ma souris là où mes JButton sont censé être afficher, ceux-ci apparaissent.
J'ai penser à un setVisible(true) mais ce n'est pas ça non plus.. Voici mon code :
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 public class MenuPrincipal extends JPanel { private final int WIDTHECRAN = 800; private final int HEIGHTECRAN = 600; private JButton jouer, score, exit; public MenuPrincipal () { this.setBounds(0, 0, WIDTHECRAN, HEIGHTECRAN); this.setLayout(null); this.add(new FondMenuPrincipal()); jouer = new JButton("jouer"); score = new JButton("scores"); exit = new JButton("quitter"); jouer.setBounds(200, 145, 100, 50); score.setBounds(200, 245, 100, 50); exit.setBounds(200, 345, 100, 50); this.add(jouer); this.add(score); this.add(exit); }Et je fait un add de MenuPrincipal dans ma JFrame évidemment.
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 public class FondMenuPrincipal extends JPanel { private ImageIcon fond; private final int WIDTHECRAN = 800; private final int HEIGHTECRAN = 600; public FondMenuPrincipal () { this.setBounds(0, 0, WIDTHECRAN, HEIGHTECRAN); this.setLayout(null); this.fond = new ImageIcon("IMAGES/fond.jpg"); } @Override public void paint (Graphics g) { super.paint(g); g.drawImage(fond.getImage(), 0, 0, this); g.setColor(Color.BLACK); Graphics2D g2 = (Graphics2D) g; g2.setComposite(java.awt.AlphaComposite.getInstance(java.awt.AlphaComposite.SRC_OVER,0.80f)); g.fillRect(150, 0, 500, HEIGHTECRAN); g2.setComposite(java.awt.AlphaComposite.getInstance(java.awt.AlphaComposite.SRC_OVER,1.0f)); g.setColor(Color.WHITE); g.setFont(new Font("FONTS/ocra.ttf", 1, 40)); g.drawString("Starship", 325, 45); }
Quelqu'un aurait une idée de comment procéder pour que mes boutons soit bel et bien visibles (sans devoir passer la souris dessus)?
Merci d'avance ! :/
Partager