2016-07-13 34 views
1

Ich arbeite gerade an einem Projekt, bei dem ich Zugang zu aktivem Mwindow haben möchte. In Eclipse 3.x durch aktive Workbench war es möglich. Aber wie kann ich dasselbe in eclipse 4 oder e4 erreichen? Irgendwelche Hinweise dazu werden geschätzt.Wie man aktives Fenster in e4 rcp Anwendung erhält?

+0

wollen Sie das Fenster, das das Hauptfenster des Ui darstellt oder wollen Sie das Fenster, das derzeit vom Benutzer ausgewählt wird? –

Antwort

0

Normalerweise können Sie es einfach injizieren.

Zum Beispiel in einem Handler Sie tun könnte:

@Execute 
public void execute(MWindow window) 

Sie auch die EModelService können Fenster mit einer bestimmten ID zu finden.

Ich würde sagen, dass ich in der Regel nicht viel brauche für die tatsächliche MWindow.

0

Für die eclipse4 ui die folgenden Werke für mich:

MApplication application = E4Workbench.getServiceContext().get(MApplication.class); 

Diese Zeile ruft die Wurzel des ui-Modells. Es enthält jedes Fenster und ihre Kinder. Mit ...

MTrimmedWindow mWindow = (MTrimmedWindow) application.getChildren().get(0); 

erhalten Sie das Hauptfenster des ui.

Ich hoffe, es hilft. Wenn nicht - zögern Sie nicht, mir einen Hinweis zu geben, was Sie stattdessen brauchen :)

+0

'E4Workbench' ist eine ** interne ** Klasse, die Sie nicht verwenden sollten. –