2009-08-12 5 views

Répondre

2

Ajouter des vérifications nuls, il est possible que l'espace de travail n'ait pas de fenêtre active, il est également possible pour PlatformUI.getWorkbench de lancer une exception IllegalStateException si le workbench n'a pas encore démarré (par exemple createAndRunWorkbench() n'a pas encore été appelé).

IWorkbenchWindow window = PlatformUI.getWorkbench().getInstance() 
    .getActiveWorkbenchWindow(); 

if(workbenchWindow != null) { 
    IWorkbenchPage page = window .getActivePage(); 
} 
34

Si le fil ne fonctionne pas dans la fenêtre active, PlatformUI.getWorkbench(). GetActiveWorkbenchWindow() retournera "null". Vous devez placer votre code dans un affichage, par exemple:

Display.getDefault().asyncExec(new Runnable() { 
    @Override 
    public void run() { 
     IWorkbenchWindow iw = PlatformUI.getWorkbench().getActiveWorkbenchWindow(); 
    } 
}); 
+0

Merci beaucoup. Cela m'aide vraiment. Parfaitement en cours d'exécution. –

Questions connexes