Eclipse 中典型 window 的适当对象

Appropriate object for typical window in Eclipse

我应该使用什么对象类型(例如 JFace、Shell、ApplicationWindow)来创建自己的 window?

在我的插件中,这个 window 将包含三个 'panels',很多组件,最重要的是我希望它 位于顶部,直到它关闭 - 与 Eclipse 中的任何其他 window 一样,因此用户在关闭 window 之前无法在 IDE 中执行任何其他操作。 window 将在单击 Eclipse 菜单中的图标后启动。

按照以下教程添加命令:http://www.vogella.com/tutorials/EclipseCommands/article.html 为打开模态 swt 小部件对话框的命令创建处理程序。 (使用 SWT.APPLICATION_MODAL )用您需要的复合材料填充对话框。

如果您的意思是像 Eclipse 'Find/Replace' 对话框那样不会阻塞主 window 使用 JFace Dialog (org.eclipse.jface.dialogs.Dialog).

将对话框设置为无模式并关闭'block on open'。

这是 Find/Replace 对话框使用的内容:

public FindReplaceDialog(Shell parentShell) {
    super(parentShell);

    // .... other code ...

    setShellStyle(getShellStyle() ^ SWT.APPLICATION_MODAL | SWT.MODELESS);
    setBlockOnOpen(false);
}