Eclipse RCP:如何确定是否将编辑器页面放在前面

时间:2012-08-25 14:19:01

标签: java user-interface eclipse-rcp

我有FormEditor FormPage,我想在页面被放到前面时启动一些操作(以便用户可以看到)。

问题是编辑器是在向导中打开的,并且在页面可见之前调用了setActive()

我希望在通过IRunnableWithProgress显示页面时启动ModalContext.run(),并在另一个帖子中创建的页面上显示一些结果。但是,当向导仍然可见时,目前已完成此操作。

非常感谢您的帮助,

迈克尔

1 个答案:

答案 0 :(得分:2)

首先想到的几个选项是覆盖setActivePage上的pageChangeFormEditor,或使用addPageChangedListener。如果您不希望每次页面可见时都运行,您可以随时使用某种标志来控制您的任务。

另一个选项(基于您的问题,听起来您希望在向导完成后专门运行此任务),您可以使用Display.getDefault().asyncExec在向导完成后堆栈展开时启动任务。