Я пытаюсь изменить цвет одного JProgressBar в Nimbus LAF (Look And Feel). Это решение делает работу, но она изменяет цвета ВСЕХ JProgressBars:/Как изменить цвет одного JProgressBar в Нимбусе?
UIDefaults defaults = UIManager.getLookAndFeelDefaults();
defaults.put("nimbusOrange",defaults.get("nimbusBase"));
В этом thread другое решение, чтобы изменить цвет для каждого в отдельности JProgressBar:
progress = new JProgressBar();
UIDefaults defaults = new UIDefaults();
defaults.put("ProgressBar[Enabled].backgroundPainter", new MyPainter());
progress.putClientProperty("Nimbus.Overrides.InheritDefaults", Boolean.TRUE);
progress.putClientProperty("Nimbus.Overrides", defaults);
К сожалению, я не могу получить это работать. Я не знаю, где найти библиотеку для «MyPainter()». Поэтому я попытался заменить этот метод (не зная, что я делаю) с «defaults.get (« nimbusBase »)» и «Color.red». Не работает.
+1 еще много вещей, которые я должен изучить из Связи, которую вы мне дали однажды, рега rding this thingy. Я не знал, что это так просто :-) –
, что может быть ужасно, до момента, когда вы знаете, где использовать стандартный цвет (XxxRenderer), когда putNimbusColor (non-compond) JComponents и для Compoun & JButtons JComponents ... – mKorbel
Благодарим вас за быстрый и полезный ответ. Теперь все работает для меня. : D Для будущих читателей: если ваш компилятор отсутствует «com.sun.java.swing.Painter.class» и/или «javax.swing.Painter.class», вы можете [скачать] (http: // www .java2s.com/Code/JarDownload/org-netbeans-swing/org-netbeans-swing-tabcontrol.jar.zip) здесь: http://www.java2s.com/Code/Jar/o/Downloadorgnetbeansswingtabcontroljar.htm – user1430180