Bonjour,
Voilà je suis entrain de faire un splash screen et j'ai un soucis tout bête, mon splash screen sera comme ça :
- une image comme fond
- un JProgressBar
- un texte juste au dessus du JProgressBar
Mon code actuel (c'est qu'un squelette en l'êtat):
Mon soucis est de placer le texte, vu la conception actuel je ne vois pas comment je peux afficher mon texte sur l'image, juste au dessus du JProgressBar.
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 public class Progress extends JWindow{ private Thread t; private JProgressBar bar; public Progress(){ setSize(300, 320); setLocationRelativeTo(null); JLabel message = new JLabel(); JLabel img = new JLabel(new ImageIcon("C:\\Users\\manux\\Pictures\\utile\\splash.jpg")); message.setText("Chargement..."); message.setForeground(Color.BLACK); t = new Thread(new Traitement()); bar = new JProgressBar(); bar.setMaximum(500); bar.setMinimum(0); bar.setStringPainted(true); this.getContentPane().add(img,BorderLayout.NORTH); this.getContentPane().add(message,BorderLayout.CENTER); this.getContentPane().add(bar,BorderLayout.SOUTH); t.start(); this.setVisible(true); } class Traitement implements Runnable{ public void run(){ //traitement } } }
Le seul moyen que je vois c'est de créer un nouveau objet qui gérera l'image + le texte via un paintComponent().
Je me demande si y a pas une autre façon de faire que devoir créer un nouvel objet spécialement pour ça ?
Partager