java - 如何让 Java 进度条显示小数值?

标签 java

我一直在到处寻找,但似乎你不能让 jprogress 条显示十进制值。我的问题是我有一个程序可以处理非常大的数据集,需要很长时间才能处理。

例如,我正在处理一个包含超过 200k 个文件的目录。处理 2000 个文件并将其输入数据库平均需要 4 分钟左右,即 1%。我试图向用户提供一个直观的指示器,了解在数据库中读取和摄取数据方面取得了多少进展。

我的进度条花了 4 分钟才显示 1%,这让我假设我的用户可能认为我的程序在某处挂起或损坏。

我知道 JProgess Bar 只接受整数值。还有其他可以用来显示进度和表示十进制值的东西吗?

如果我的进度条可以显示 0.01%,这比在 0% 处停留 4 分钟要好。

如果没有办法做到这一点,我是否应该将最大值设置为文件数,而不以百分比显示进度?

最佳答案

答案是:。根据文档http://docs.oracle.com/javase/7/docs/api/javax/swing/JProgressBar.html setValue 方法仅接受 int:

setValue(int n) - Sets the progress bar's current value to n.

您可以: 1.) 正如您所说 - 将最大值设置为您必须处理的文档数量。

2.) 使用:

setString(String s) - Sets the value of the progress string.

并将其用作完成百分比的指标。

3.) 扩展类(?)。

希望有帮助。

关于java - 如何让 Java 进度条显示小数值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21758794/

相关文章:

java - 无法在 GAE HR 数据存储上启动 Spring MVC 3.0 应用程序,但可以在主/从属上运行

java - 如何覆盖包装类中的方法?

JavaFX Web View : custom cursors not working?

java - 如何将 Eclipse 从 Java IDE 更改为 C++ IDE?

java - Android:通过 BLE 发送数据 >20 字节

java - Android:Log Verbose 在 2.2 上针对新字符串 "byte array"初始化抛出错误

java - 利用现有数据库的应用程序的 Web 框架?

java - 如何使用POST方法代替GET方法

java - 为什么 HttpURLConnection API 中有流?

java - 基于某些业务逻辑在运行时显示/隐藏 Swing 组件的良好设计模式