如何改变JProgressBar颜色?

Ali*_*sam 17 java swing colors jprogressbar

我用过.setBackground而且.setForeground它们不起作用,颜色就像橙色,无法改变它.

mKo*_*bel 23

我认为这些价值观适合您

UIManager.put("ProgressBar.background", Color.ORANGE);
UIManager.put("ProgressBar.foreground", Color.BLUE);
UIManager.put("ProgressBar.selectionBackground", Color.RED);
UIManager.put("ProgressBar.selectionForeground", Color.GREEN);
Run Code Online (Sandbox Code Playgroud)

  • 难道你不应该只改变这个进度条的颜色,而不是应用程序中所有进度条的默认颜色(就像在亚历克斯的帖子中一样)吗? (2认同)
  • @madhawa priyashantha 是的,但你必须覆盖 [JProgressBar Painter](http://stackoverflow.com/search?q=user%3A714968+%5Bjprogressbar%5D+nimbus) (2认同)

Ale*_*xey 18

您应该将setStringPainted属性设置为true:

progressBar.setStringPainted(true);
progressBar.setForeground(Color.blue);
progressBar.setString("10%");
Run Code Online (Sandbox Code Playgroud)

  • 我想这取决于你正在使用的L&F.例如,这与Nimbus无关. (6认同)
  • 但这会改变文本颜色,而不是进度颜色. (2认同)