0
我正在爲一個記錄不好的Eclipse RCP應用程序編寫一個插件,我需要在視圖中添加一個監聽器,我相信這是一個TreeViewer
。我有權訪問代表該視圖的IWorkbenchPart
,但我怎樣才能獲得它包含的TreeViewer
?我想我需要一種方法來返回子組件(即相當於AWT的getComponents()
方法),但我沒有看到這樣的方法。如何在IWorkbenchPart中查找組件?
我正在爲一個記錄不好的Eclipse RCP應用程序編寫一個插件,我需要在視圖中添加一個監聽器,我相信這是一個TreeViewer
。我有權訪問代表該視圖的IWorkbenchPart
,但我怎樣才能獲得它包含的TreeViewer
?我想我需要一種方法來返回子組件(即相當於AWT的getComponents()
方法),但我沒有看到這樣的方法。如何在IWorkbenchPart中查找組件?
如果零件包含TreeViewer
,則該查看器可能被設置爲ISelectionProvider
,其中包含該視圖的IWorkbenchSite
。
因此,你可以嘗試使用IViewPart
參考下面的,你必須:
IViewPart; // Your reference to the IViewPart instance
ISelectionProvider provider = part.getSite().getSelectionProvider(); //Hopefully the TreeViewer
provider.addSelectionChangedListener(yourListener);