如何在 Eclipse 插件代码中使用进度监视器?
how do I use progress monitor in eclipse plugin code?
在我的 eclipse 插件中,我创建了一个实用程序 class,当我使用我的向导创建文件时,它会做一些工作。
我想在进度条中向用户显示一些文本,警告他正在发生的事情。
我该怎么做?
非常感谢。
更新:我的向导调用我的实用程序 class,它解压缩 2 个 ZIP 文件并将 2 个项目导入工作区。所以,我想在每次操作后显示一条消息,例如:
正在解压缩文件 1...
正在解压缩文件 2...
正在导入项目 1...
正在导入项目 2...
在您的向导中 class 通过调用
启用进度监视器
setNeedsProgressMonitor(true);
在构造函数中。
然后您可以 运行 您的 IRunnableWithProgress
class 与:
IRunnableWithProgress runnable = new MyRunnable();
getContainer().run(true, true, runnable);
这可以在向导或 WizardPage 中。
IRunnableWithProgress
class 可能看起来像:
private class MyRunnable implements IRunnableWithProgress
{
@Override
public void run(final IProgressMonitor monitor)
throws InvocationTargetException, InterruptedException
{
monitor.beginTask("title", progress count);
try
{
... your work
}
finally
{
monitor.done();
}
}
}
在我的 eclipse 插件中,我创建了一个实用程序 class,当我使用我的向导创建文件时,它会做一些工作。
我想在进度条中向用户显示一些文本,警告他正在发生的事情。
我该怎么做? 非常感谢。
更新:我的向导调用我的实用程序 class,它解压缩 2 个 ZIP 文件并将 2 个项目导入工作区。所以,我想在每次操作后显示一条消息,例如:
正在解压缩文件 1... 正在解压缩文件 2... 正在导入项目 1... 正在导入项目 2...
在您的向导中 class 通过调用
启用进度监视器setNeedsProgressMonitor(true);
在构造函数中。
然后您可以 运行 您的 IRunnableWithProgress
class 与:
IRunnableWithProgress runnable = new MyRunnable();
getContainer().run(true, true, runnable);
这可以在向导或 WizardPage 中。
IRunnableWithProgress
class 可能看起来像:
private class MyRunnable implements IRunnableWithProgress
{
@Override
public void run(final IProgressMonitor monitor)
throws InvocationTargetException, InterruptedException
{
monitor.beginTask("title", progress count);
try
{
... your work
}
finally
{
monitor.done();
}
}
}