Changer le couleur du ProgressBar
Bonjour,
j'ai un petit problème avec une JProgressBar qui est de couleur orangé alors que je veux le changer de façon qu'il soit rouge si la valeur de progression < 20 orange si <60 et vert si non j'ai utilisé le UIManger, setForeground, setBackground mais sans aucune résultat
merci d'avance
j'ai un petit problème avec une JProgressBar qui est de couleur orangé alors que je veux le changer de façon qu'il soit rouge si la valeur de progression < 20 orange si <60 et vert si non j'ai utilisé le UIManger, setForeground, setBackground mais sans aucune résultat
merci d'avance
1 réponse
-
ModérateurPourtant setForeground devrait fonctionner...
Exemple :
import java.awt.Color; import javax.swing.JFrame; import javax.swing.JProgressBar; public class Test { public static void main(String[] args) throws InterruptedException { JFrame frame = new JFrame(); JProgressBar bar = new JProgressBar(); frame.add(bar); frame.setLocationRelativeTo(null); frame.pack(); frame.setVisible(true); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); final int min = 56, max = 234; bar.setMinimum(min); bar.setMaximum(max); bar.setStringPainted(true); for (int i=min; i<=max; i++) { bar.setValue(i); if (bar.getPercentComplete()<0.20) bar.setForeground(Color.RED); else if (bar.getPercentComplete()<0.60) bar.setForeground(Color.ORANGE); else bar.setForeground(Color.GREEN); Thread.sleep(100); } } }