1:设置可以显示进度条。在ApplicationWorkbenchWindowAdvisor的preWindowOpen中添加一个
configurer.setShowStatusLine(true);
configurer.setShowProgressIndicator(true);
2:编写任务代码,具体功能在run中实现:
Job searchJob = new Job("Task") {
protected IStatus run(IProgressMonitor monitor) {
try {
monitor.beginTask("", 100);
for (int i = 0; i < 10; i++) {
Thread.sleep(500);
monitor.worked(10);
}
monitor.done();
} catch (Exception e) {
e.printStackTrace();
}
return Status.OK_STATUS;
}
};
searchJob.setUser(true); // 是否需要弹出进度窗口
searchJob.schedule();
3:注意:
在job的run方法中,不能调用任何widget的信息,比如获取text或者设置setInput。都会出错,因为job是新开的一个线程,不能访问主线程中的widget