如何使不确定的进度看起来很好?(how to make Indeterminate progress

2019-10-18 03:01发布

我使用的是灵气lookAndFill

UIManager.setLookAndFeel("com.sun.java.swing.plaf.nimbus.NimbusLookAndFeel");

我不确定的JProgressBar看起来像这样:

http://img15.imageshack.us/img15/9470/uglyprogress.jpg

我可以使它看起来更好?

Answer 1:

这里有一个简单的解决方案。 你可以只设置灵气的外观和感觉之前的进度条UI默认值复制,然后设置后他们回来。 那么你得到的Nimbus外观和感觉,但没有它的进度条样式。

// copy progress bar defaults
HashMap<Object, Object> progressDefaults = new HashMap<>();
for(Map.Entry<Object, Object> entry : UIManager.getDefaults().entrySet()){
    if(entry.getKey().getClass() == String.class && ((String)entry.getKey()).startsWith("ProgressBar")){
        progressDefaults.put(entry.getKey(), entry.getValue());
    }
}

// set nimbus
UIManager.setLookAndFeel("com.sun.java.swing.plaf.nimbus.NimbusLookAndFeel");

// copy back progress bar defaults
for(Map.Entry<Object, Object> entry : progressDefaults.entrySet()){
    UIManager.getDefaults().put(entry.getKey(), entry.getValue());
}


Answer 2:

您可以使用不同的外观,并填写或创建自己的组件 。



文章来源: how to make Indeterminate progressbar look nicely?