0

我如何添加一个progressbar可以显示完成当前流程需要多长时间的内容?
我确实知道如何以progressbar简单的方式构造和使用 a ,但我不知道如何将它们与流程绑定。

例如,当我单击一个按钮时,我想打开一个 jfilechooser,这可能需要一些时间。我希望用户知道应用程序没有崩溃,并了解 jfilechooser 出现之前需要多长时间。

提前致谢

4

1 回答 1

1

问题是,在处理不是您编写的课程时,将进度条与实际进度联系起来并不容易。

如果您想将其与某些任务的进度绑定,请执行以下步骤:

  1. 为耗时任务分配线程
  2. 使用父类中的静态字段作为您在任务中完成的进度。(可能是从 1 到 100 的计数器)
  3. 每个特定时间段(1 秒)检查该静态字段并使用它设置进度条。
  4. 在您的任务中,您将漫长的过程划分为多个固定步骤(即打开文件、处理、准备提取的数据……等)。
  5. 在每一个坚实的步骤之后,用到目前为止的进度更新父类中的静态字段。

确保使用信号量来规范写入和读取静态字段的过程。

于 2012-11-25T13:28:55.330 回答