如何关闭eclipse RCP应用程序中的启动画面?

时间:2013-02-14 14:27:29

标签: eclipse splash-screen rcp

在eclipse RCP应用程序中,splash.bmp用作启动画面。它在应用程序运行大约5-6分钟后关闭。一旦UI显示,我希望它关闭。我在Platform.endSplash()之前尝试使用应用程序上下文的applicationRunning()PlatformUI.createAndRunWorkbench(display, new ApplicationWorkbenchAdvisor())

无法关闭启动画面。

任何建议都会有所帮助。如果我能在大约10-15秒之后关闭闪屏,那也没关系。

public Object start(IApplicationContext arg0) throws Exception {
        Display display = PlatformUI.createDisplay();
        int returnCode = 0;
        try {

            //arg0.applicationRunning();
            Platform.endSplash();
            returnCode = PlatformUI.createAndRunWorkbench(display,
                    new ApplicationWorkbenchAdvisor());

            if (returnCode == PlatformUI.RETURN_RESTART) {
                return PlatformUI.RETURN_RESTART;
            }

        return PlatformUI.RETURN_OK;
        } finally {
           //some other code here.
            display.dispose();
        }
}

2 个答案:

答案 0 :(得分:0)

我希望在初始化所有内容时关闭启动画面,而不是在设定的秒数之后。否则你甚至不需要一个。

根据this thread,您应该确保在正确的上下文中调用Platform.endSplash()方法,这意味着方法start(IApplicationContext context)

如果您已经这样做,请提供一些代码以帮助我们了解您的问题

答案 1 :(得分:0)

关闭启动画面由StartupMonitor中创建的Workbench处理。

创建工作台部分后(正如您所说,“只要某些UI显示”),它将循环遍历所有已注册的启动服务。事实上,您的工作台可见并且必须等待~~6分钟(或几秒钟)才能关闭启动画面意味着您有另一个启动监视器阻止您所需的UI转换。