【发布时间】:2012-09-19 09:38:04
【问题描述】:
您好,我正在尝试在 java 中更改挥杆进度条的颜色。 最初我尝试使用以下代码:
UIManager.put("ProgressBar.selectionBackground", Color.black);
UIManager.put("ProgressBar.selectionForeground", Color.white);
UIManager.put("ProgressBar.background", Color.white);
UIManager.put("ProgressBar.foreground", Color.RED);
m_progressBar.setBackground(Color.BLACK);
m_progressBar.setForeground(Color.red);
但是这些命令似乎都没有任何效果!!!
除非我设置了m_progressBar.stringPainted(true),然后前景确实发生了变化。
无论如何我知道问题是由以下命令引起的:UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel");
在 UI 初始化之前调用。
所以我的问题是:
1) 出于好奇:为什么 stringPainted(true) 调用会设法覆盖前台 UI 设置?
2) 如何在代码开头保留UIManager.setLookAndFeel 并仍然覆盖 UI 设置?
谢谢!!
【问题讨论】:
标签: java swing look-and-feel jprogressbar uimanager