如何以编程方式关闭 Eclipse 应用程序中的 JFace 对话框

How to programatically close a JFace Dialog in Eclipse Application

我想在 eclipse 应用程序中以编程方式关闭 JFace 对话框。正在使用处理程序创建对话框:

public Object execute(ExecutionEvent event) throws ExecutionException {
        IWorkbenchWindow window =HandlerUtil.getActiveWorkbenchWindowChecked(event);
        CustomDialog dialog = new CustomDialog(window.getShell());
        dialog.open();
}

现在 'Custom Dialog' 运行后台线程,我想在后台线程完成后关闭此对话框。有没有办法以编程方式执行此操作,类似于我们可以为编辑器和视图执行的操作。

只需调用对话框 close() 方法。

请注意,您必须在用户界面线程中执行此操作,因此后台线程需要使用 Display.asyncExec