0

Eclipse RCP アプリケーションでは、 asplash.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();
        }
}
4

2 に答える 2

0

スプラッシュ画面は、設定された秒数の後ではなく、すべてが初期化されたときに閉じると思います。それ以外の場合は必要ありません。

このスレッドによると、メソッドを正しいコンテキストで呼び出す必要がありPlatform.endSplash()ます。つまり、メソッドを呼び出す必要があります。start(IApplicationContext context)

すでにこれを行っている場合は、問題を理解するのに役立つコードを提供してください

于 2013-02-14T16:28:42.977 に答える
0

スプラッシュ スクリーンの終了は、 で作成された によって処理さStartupMonitorWorkbenchます。

ワークベンチ パーツが作成された後 (「いくつかの UI が表示されるとすぐに」と言うように)、登録されているすべてのスタートアップ サービスを循環します。ワークベンチが表示されていて、スプラッシュ スクリーンが閉じるまで 5 ~ 6 分 (または秒) 待たなければならないという事実は、別の起動モニターが目的の UI 遷移を妨げていることを意味します。

于 2013-02-17T14:37:32.840 に答える