在SWT / Eclipse 3.x API中是否有类似于SwingUtilities invokeLater的功能?

4

SwingUtilities.invokeLater()在Eclipse API 3.x中有什么等效的方法?

也就是说,如何在“主线程”上运行某些内容?

我能使用吗?

@Inject 
UISynchronize sync;

这是在Eclipse插件3.x中使用的吗?

文档中写道UISynchronize自"1.0"版本以来就可用。这是什么意思?那为什么它在e4包中呢?


定义“主线程”的概念 - Dims
1个回答

11

您只能在Eclipse 4.x应用程序模型对象上简单地使用@Inject(Eclipse 4.x API称为e4)。因此,除非您进行额外的工作,否则无法在Eclipse 3.x API中使用注入。

更新版本的Eclipse确实支持使用org.eclipse.ui.views扩展点的e4view元素声明的视图。这些视图可以使用@Inject

Display.getDefault().asyncExec()SWT对象一起使用,以在SWT主线程中运行代码。

Display.getDefault().asyncExec(new Runnable()
{
  @Override
  public void run()
  {
     .. code to update the UI
  }
});

你的内容总是非常有帮助的! - GhostCat

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接