【问题标题】:How do i implement a progress bar in the main wizard page with eclipse plugin?如何使用 eclipse 插件在主向导页面中实现进度条?
【发布时间】:2018-12-07 23:22:23
【问题描述】:
我有一个 Eclipse 插件应用程序。我已经实现了一个新的类似 Maven 的向导,它使用方法 addPages 附加到现有的 Eclipse 向导,我没有对主向导做任何更改。当我在主向导上时向导并单击“像项目一样创建新的 maven”它不会很快加载我的向导(我的向导页面中有一个方法可以减慢打开速度)所以我想在主向导中实现一个进度条来跟踪进度打开我的向导,我该怎么做?
【问题讨论】:
标签:
java
eclipse-plugin
progress-bar
jobs
wizard
【解决方案1】:
向导有一个内置的进度条,通常在单击完成或在页面之间移动时使用。您可以在创建向导的过程中使用它。
在您的向导调用的构造函数中:
setNeedsProgressMonitor(true);
要运行慢代码,请使用
try
{
getContainer().run(true, true, runnableWithProgress);
}
catch (final InvocationTargetException ex)
{
// TODO handle
}
catch (final InterruptedException ex)
{
// TODO handle
}
其中runnableWithProgress 是实现IRunnableWithProgress 并使用传递给run 方法的IProgressMonitor 运行慢代码以更新进度条的东西。