我无法找到一种方法来删除突出显示并保留黑线边框。设置 .setBorderPainted(false)
修复了突出显示,但也删除了边框。有没有办法通过外观
或UIManager
来解决这个问题?
代码:
this.downloadProgressBar.setBounds(16, 16, 512, 32);
this.downloadProgressBar.setBorder(this.blackBorder);
this.downloadProgressBar.setForeground(Color.pink);
this.downloadProgressBar.setOpaque(false);
this.downloadProgressBar.setString("75%");
this.downloadProgressBar.setStringPainted(true);
this.downloadProgressBar.setMinimum(0);
this.downloadProgressBar.setMaximum(100);
this.downloadProgressBar.setValue(75);
最佳答案
您可以用基本的进度条 UI 替换默认的 PLAF UI,该进度条 UI 没有讨厌的突出显示:
(使用临时变量使代码更易于阅读):
JProgressBar bar = this.downloadProgressBar;
bar.setUI((ProgressBarUI)BasicProgressBarUI.createUI(bar));
关于java - 如何从 JProgressbar 中删除突出显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56893506/