我有这些进度条:
我正在尝试设置进度条的TEXT颜色,而不更改背景颜色或进度条本身的颜色。据我所知,setForeground()设置文本和条形颜色?有没有办法在没有另一个的情况下做一个?
答案 0 :(得分:21)
啊哈 - 看起来我可以修改UI:
setUI(new BasicProgressBarUI() {
protected Color getSelectionBackground() { return Color.black; }
protected Color getSelectionForeground() { return Color.white; }
});
这有点令人困惑,因为前景和背景的使用并不直观。背景是条形图未覆盖时的文本颜色,前景是文本的颜色。
这是最终结果:
答案 1 :(得分:4)
通过UIDefaults消息,
ProgressBar.background is the background color
ProgressBar.foreground is the cell color
ProgressBar.selectionBackground is the text color outside cells
ProgressBar.selectionForeground is the text colot INSIDE cells
UIManager.put("ProgressBar.selectionForeground", Color.black);
UIManager.put("ProgressBar.selectionBackground", Color.black);