【问题标题】:Eclipse RCP e4: how to add a progress bar with unknown work loadEclipse RCP e4:如何添加未知工作负载的进度条
【发布时间】:2014-05-23 15:17:54
【问题描述】:

我想在我的 RCP e4 应用程序中添加一个进度条,它只指示某些 bg-work 正在运行。不需要进度报告,只需一个滚动条,如下所示:

我的问题是如何做到这一点?我需要自己实现这个控制吗?非常感谢!

【问题讨论】:

标签: eclipse rcp e4


【解决方案1】:

在最低级别,您可以使用带有 SWT.INDETERMINATE 标志的 SWT ProgressBar 控件。

JFace 使用支持确定和不确定条的ProgressIndicator 类扩展了它。它通过ProgressMonitorPart 进一步扩展了这一点,它提供了一个取消按钮并实现了IProgressMonitorWithBlocking 接口。

如果您在 e4 中使用 Job,您需要通过使用以下设置进度提供程序将 UI 进度条连接到作业管理器:

Job.getJobManager().setProgressProvider(provider);

其中provider 是一个扩展ProgressProvider 的类。此类为作业系统提供了在作业运行时使用的进度监视器。这可以基于ProgressMonitorPart

【讨论】:

  • 感谢您提供如此详细的回答!我现在正在使用带有 SWT.INDETERMINATE 标志的 ProgressBar。
  • 基本上只允许一个 ProgressProvider。因此,如果我提供自己的,那么每个工作都在那个上运行,对吧?
  • @LppEdd 只有一个进度提供程序用于所有作业。一个传统的 Eclipse 3.x 风格的 RCP 已经有一个提供者(org.eclipse.ui.internal.progress.ProgressManager),我不知道如果你试图改变它会发生什么。我只在纯 e4 RCP 中使用过它。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-10-12
  • 2014-04-10
  • 2016-08-04
  • 2014-04-06
相关资源
最近更新 更多