public class TestWithProgress implements IRunnableWithProgress {
public void run(IProgressMonitor monitor)
throws InvocationTargetException, InterruptedException {
monitor.beginTask("Test", IProgressMonitor.UNKNOWN);
ActivateJob job = new ActivateJob("Test");
job.addJobChangeListener(new ActivateJobChangeAdapter(Display.getDefault()));
job.setUser(true);
job.schedule();
if (monitor.isCanceled()) {
throw new InterruptedException(
"The long running operation was cancelled"); //$NON-NLS-1$
}
}
private class ActivateJob extends Job {
public ActivateJob(String name) {
super(name);
}
@Override
protected IStatus run(IProgressMonitor monitor) {
try {
...................
return new Status(Status.OK, "OK", "OK");
} catch (Exception ex) {
return new Status(Status.ERROR, "FAIL", "FAIL");
}
}
}
private class ActivateJobChangeAdapter extends JobChangeAdapter {
/*
* (non-Javadoc)
*
* @see
* org.eclipse.core.runtime.jobs.JobChangeAdapter#done(org.eclipse.core
* .runtime.jobs.IJobChangeEvent)
*/
@Override
public void done(final IJobChangeEvent event) {
IStatus iStatus = event.getResult();
String message = iStatus.getMessage();
if (IStatus.OK != iStatus.getSeverity()) {
......
}
}
}
}
ProgressMonitorDialog progressMonitorDialog = new ProgressMonitorDialog(
Display.getCurrent().getActiveShell());
try {
progressMonitorDialog.run(false, true,
new TestWithProgress());
} catch (InvocationTargetException e) {
} catch (InterruptedException e) {
} catch (Throwable e) {
}
WorkbenchWindowAdvisor.preWindowOpen()中有这configurer.setShowProgressIndicator(true);确保在状态栏显示进度条
如果要显式进度窗口,用job.setUser(true).或者调用IWorkbenchSiteProgressService.showInDialog(...)
完成部分任务时执行,monitor.worked(进度片段值);
分享到:
相关推荐
RCP实现的带有复选框的TreeViewer,选择相关行,能够提示用户相关信息
Eclipse rcp 实现文本内容对比功能,可自己选取对比的文件进行比较
RCP中文入门教程,RCP中文入门教程,RCP中文入门教程,RCP中文入门教程
【CSDN首发】,百度上的不是完整版本,非本人发布 本教程素材来源于网络,经过本人的整理、添加以及部分的重写,将原有的Eclipse3.3版本的一些内容完全迁移到Eclipse3.6...6.5 实例:文本编辑器实现 .................
RCP+Plug-in开发自学教程.pdf
java中RCP中使用JNI
RCP中使用adapter扩展模型为IPropertySource,达到显示属性视图的目的;详细介绍了各种适配器方式。
代码demo和ppt介绍;用org.eclipse.ui.presentationFactories扩展点RCP自定义透视图切换按钮的右键菜单,去除Editor的右键菜单和关闭按钮;
这就是对RCP实现在线升级的说明,实现导出RCP查品,制作升级网站。
基于适配器模式的RCP应用属性视图实现,在做RCP或者Eclipse插件开发的朋友可以用到的,关于如何自定义属性栏信息
本文通过使用java语言,基于Eclipse Plug-ins,RCP,EMF等技术,及java mail工具包实现了Email客户端,并通过此系统的实现来加深对Eclipse插件开发技术的学习。本系统适用于所有用户,无管理员设置,可以创建多个网络...
RCP中文入门教程.pdf
索尼 sony rcp 1500 中文操作手册,非常好,是中文的,希望大家多多下载 谢谢谢谢,让我多赚些积分
难得的Eclipse插件RCP中文入门教程
RCP&OSGI;
eclipse RCP Plug-in开发自学教程 , 只要java基础好,自学没问题的。。。
Eclipse RCP中使用第三方包,图文并茂很不错。