Salut,
Les couleurs des composants standards SWING sont gérées par le Look And Feel. En fonction de celui-ci, les couleurs affectées par setForeground(), ou setBackground(), sont utilisées de manières différentes (Il peut y avoir d'ailleurs beaucoup plus de couleurs, pour peu qu'il y ait des effets de relief, d'ombre...). Sur mon Windows8, avec le LnF par défaut (LnF Metal, thème Ocean), le foreground semble bien être la couleur de la barre.
Tu peux éventuellement "bidouiller" les couleurs de base du LnF, en modifiant la table de couleurs :
UIManager.put("ProgressBar.foreground", Color.GREEN);
Attention : ceci change le foreground de toutes les JProgressBar créées par la suite. Tu peux restaurer la couleur standard comme ça :
1 2 3 4 5 6 7 8 9 10 11 12
|
// tu sauvegardes la couleur
Object foregroundProgressBarColor = UIManager.get("ProgressBar.foreground");
// tu choisis ta couleur
UIManager.put("ProgressBar.foreground", Color.GREEN);
// ici tu créés la progressbar
progressBar = new JProgressBar(0,100);
// tu restaures
UIManager.put("ProgressBar.foreground", foregroundProgressBarColor); |
Avec un petit POC en pièces jointes.
EDIT: oups, encore grié par @Tchize_
Partager