JProgressBar с двойным значением - PullRequest
2 голосов
/ 05 июля 2011

Здравствуйте, я хотел бы знать, могу ли я расширить JProgressBar, чтобы использовать двойное значение для min max вместо int. Спасибо.

Ответы [ 2 ]

6 голосов
/ 05 июля 2011

Если вы знаете границы и точность ваших значений, это легко сделать с помощью обертки.Я использовал этот подход для приложений с интенсивными вычислениями, где 1% соответствует примерно 30 секундам.Показ JProgressBar с min=0 и max=100 не дал достаточной обратной связи.Пользователи думали, что приложение зависло.

Решение: Масштабировать значения

У меня был float (0f - 1f), который представлял фактический процент выполнения.Умножив это на 10000, я получил целочисленный диапазон от 0 до 10000. Я установил JPB с min = 0 и max = 10000.

Затем просто вызовите setString(NumberFormat.getPercentInstance().format(value)), чтобы отобразить отформатированный процент.

4 голосов
/ 05 июля 2011

Конечно можно, но с какой целью?Как вы отображаете половину процента?

Однако вы можете использовать метод setString () , чтобы отобразить более точное значение.Печать строки должна быть включена с помощью setStringPainted () -метод.

...