我正在尝试更改Nimbus LAF中单个JProgressBar的颜色(外观)。此解决方案确实有效,但它会更改所有JProgressBars的颜色:/
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”替换这个方法(不知道我在做什么)。也不管用。
发布于 2012-06-01 17:07:41
1.你能说出是哪一个吗
UIManager.put("ProgressBar.background", Color.orange);
UIManager.put("ProgressBar.foreground", Color.blue);
UIManager.put("ProgressBar.selectionBackground", Color.red);
UIManager.put("ProgressBar.selectionForeground", Color.green);注意MetalLookAndFeel的有效UIDefaults,
2.然后请在Nimbus Defaults中搜索等效内容
https://stackoverflow.com/questions/10847308
复制相似问题