Java为当前Thread添加进度条

时间:2012-11-25 13:09:57

标签: java swing progress-bar

如何添加progressbar,以显示完成当前流程所需的时间? 我知道如何以简单的方式构造和使用progressbar,但我不知道如何将它们与进程绑定。

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

提前致谢

1 个答案:

答案 0 :(得分:1)

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

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

  1. 将线程分配给耗时的任务
  2. 使用父类中的静态字段作为您在任务中完成的进度。 (可以从1到100反击)
  3. 每个特定时间段(1秒)检查一下静态字段并使用它设置进度条。
  4. 在您的任务中,您将漫长的过程划分为可靠的步骤(即打开文件,处理,准备提取的数据......等)。
  5. 在每个固体步骤之后,使用目前为止的进度更新父类中的静态字段。
  6. 确保使用信号量来规范写入和读取静态字段的过程。