当前位置:  开发笔记 > 开发工具 > 正文

Eclipse RCP:如何在编辑器加载后显示消息对话框?

如何解决《EclipseRCP:如何在编辑器加载后显示消息对话框?》经验,为你挑选了1个好方法。

我在点击treenode的视图中打开一个编辑器.现在,当向用户显示编辑器加载和控件时,我想根据编辑器上的某些值向用户显示警告消息对话框.

我尝试将警告对话框放在编辑器的createPartControl方法的末尾.根据所需功能双击preenode时出现对话框.但问题是,当对话框出现时,编辑器上的控件仍然不可见.只有当我关闭对话框时才会显示编辑器控件.

我希望它以相反的方式发生.即编辑器控件首先显示,然后出现警告对话框.我应该做些什么改变才能达到这个效果?



1> VonC..:

您可能希望以异步方式调用MessageDialog,以使编辑器有机会完成自己,如此消息中所示.

在asyncExec()runnable中显示警告对话框将确保编辑器的初始化都以正确的顺序发生.

所以,像(未经测试)此代码的东西可能会做到这一点:

getSite().getShell().getDisplay().asyncExec
    (new Runnable() {
        public void run() {
            MessageDialog.openWarning(getSite().getShell(),"wrong","no)
        }
    });
}

此MapEditor类中的其他一些示例,其中通过asyncExec显示MessageDialog,等待结果:

PlatformGIS.syncInDisplayThread

推荐阅读
郑谊099_448
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有