Java 带双值的JProgressBar
您好,我想知道我是否可以扩展一个Java 带双值的JProgressBar,java,swing,jprogressbar,Java,Swing,Jprogressbar,您好,我想知道我是否可以扩展一个JProgressBar来使用minmax的双精度值,而不是int。 谢谢。当然可以,但目的是什么?如何显示半个百分点 但是,您可以使用-method来显示更精确的值。打印字符串必须使用-方法打开。如果您知道值的边界和精度,使用包装器很容易。我将这种方法用于计算密集型应用程序,其中1%相当于大约30秒。显示带有min=0和max=100的JProgressBar没有提供足够的反馈。用户认为应用程序已挂起 解决方案:缩放值 我有一个浮点数(0f-1f),代表实际完成
JProgressBar
来使用minmax的双精度值,而不是int。
谢谢。当然可以,但目的是什么?如何显示半个百分点
但是,您可以使用-method来显示更精确的值。打印字符串必须使用-方法打开。如果您知道值的边界和精度,使用包装器很容易。我将这种方法用于计算密集型应用程序,其中1%相当于大约30秒。显示带有
min=0
和max=100
的JProgressBar
没有提供足够的反馈。用户认为应用程序已挂起
解决方案:缩放值
我有一个浮点数(0f-1f),代表实际完成的百分比。
乘以10000,我得到了一个0-10000的整数范围。我设置JPB的最小值为0,最大值为10000
然后只需调用
setString(NumberFormat.getPercentInstance().format(value))
即可显示格式化的百分比。我不会扩展它,而是将其包装。如果进度条宽400像素,则将半个百分比显示为两个像素。当你有更多的信息时,它会提供细粒度的解析。@Kieveli我明白你的意思,但这也适用于普通整数。如果希望progressbar是最细粒度的,可以将最大值设置为可能的最高值。这条线将尽可能地处理绘图问题。我相信我错过了将这条线设置为0-10000而不是0-100的要点。实际上,0-10000为您提供了两位小数点后的潜在渲染精度-假设您有一个疯狂的宽像素计数。