模态 RCP 对话框不是模态的

Modal RCP Dialog not modal

我在 e4 workbench 中创建模态对话框时遇到了一些问题。 有一个预定义的对话框(org.eclipse.e4.ui.model.application.ui.basic.impl.DialogImpl), 但问题是我不知道如何让它成为模态。

也许你们有一些线索。

您可以在对话框的持久状态中使用 'styleOverride' 来设置对话框的样式。 'styleOverride' 的值是您要使用的 SWT 标志的数值。

对于应用程序模型对话框,样式通常是

SWT.TITLE | SWT.RESIZE | SWT.MAX | SWT.CLOSE | SWT.APPLICATION_MODAL

它的数值为 66672,因此您可以在持久化状态数据中设置它:

坚持使用传统的 JFace Dialog 可能更容易,因为应用程序模型 MDialog 不支持按钮等