Job进度条

hjxaut 2008-07-01 10:59:59
我在actionSets实现类的run方法中
Job cunstomJob = new Job("执行") {

@Override
protected IStatus run(IProgressMonitor monitor)
{
monitor.beginTask("开始执行任务...", 10);

for (int i = 0; i < 10; i++)
{
try
{
Thread.sleep(1000);
} catch (InterruptedException e)
{
e.printStackTrace();
}
monitor.worked(i);
System.out.println(i + "");
}

monitor.done();

return Status.OK_STATUS;
}

};
cunstomJob.setUser(true);
cunstomJob.setPriority(Job.SHORT);
cunstomJob.schedule();
可是上述虽然运行并打印了出了结果,但是并没有按照要求出现进度条对话框,不怎么这怎么回事?
请用过的指教
...全文
85 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
chiny 2008-07-04
  • 打赏
  • 举报
回复
job本来就没有进度条对话框啊,background的,只有状态条。

你可以使用通过

getViewSite().getWorkbenchWindow().getWorkbench().getProgressService().run(true, true, new IRunnableWithProgress(){


@Override
public void run(IProgressMonitor monitor)
throws InvocationTargetException,
InterruptedException {
monitor.beginTask(开始执行任务...", 10);
for (int i = 0; i < 10; i++)
{
monitor.subTask("Step :"+i);
Thread.sleep(1000);
monitor.worked(1);
}
monitor.done();

}});

来看到对话框。

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧