在我的RCP
應用程序中有兩個視圖。如何獲取RCP應用程序中WorkbenchWindow中列出的視圖?
我知道如何獲得積極的看法。它通過使用以下代碼:
PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().getActivePart();
但我需要所有視圖的列表,它們出現在Active Workbench窗口中。
在我的RCP
應用程序中有兩個視圖。如何獲取RCP應用程序中WorkbenchWindow中列出的視圖?
我知道如何獲得積極的看法。它通過使用以下代碼:
PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().getActivePart();
但我需要所有視圖的列表,它們出現在Active Workbench窗口中。
使用
PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().getViewReferences()
對這一問題。
的意見是在頁面上,而不是窗口:
IViewReference [] viewRefs = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().getViewReferences();
您還可以得到所有頁面(雖然通常只有一個)
IWorkbenchPage [] pages = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getPages();
和窗口:
IWorkbenchWindow [] windows = PlatformUI.getWorkbench().getWorkbenchWindows();
可以肯定的是,所有窗口上的所有頁面都可以迭代所有內容。
嗨Keerthi使用下面的代碼來獲取意見,
PlatformUI.getWorkbench()。getActiveWorkbenchWindow()。getActivePage()。getViewReferences()
這將返回ARRY意見迭代器陣列上,你會得到每個視圖。
要獲得視圖id,執行以下
爲:{ view.getViewSite()的getId();(IViewPart視圖PlatformUI.getWorkbench()getActiveWorkbenchWindow()getActivePage()getViews()...)。 //獲取視圖ID }
我希望這一定會對你有用:)