eclipse showview根据secondaryid查找viewer
时间: 2024-01-02 19:03:38 浏览: 42
在 Eclipse 中,可以使用 `showView()` 方法根据视图的 ID 在工作台中打开视图。但是如果你的视图是多重实例(即具有多个打开的视图),则可以使用 `showView()` 方法的 `secondaryId` 参数来标识要打开的特定视图实例。一旦你已经打开了一个具有特定 `secondaryId` 的视图实例,你可以使用 `getViewSite().getSecondaryId()` 方法获取该视图实例的 `secondaryId`。
如果你要根据 `secondaryId` 查找已经打开的视图实例,可以使用 `IWorkbenchPage` 接口的 `findView()` 方法。此方法接受两个参数:视图的 ID 和 `secondaryId`。如果找到了具有指定 `secondaryId` 的视图实例,则该方法将返回 `IViewPart` 对象的实例(该对象表示视图实例)。如果没有找到具有指定 `secondaryId` 的视图实例,则该方法将返回 `null`。
下面是一个示例代码片段,演示如何使用 `findView()` 方法查找具有特定 `secondaryId` 的视图:
```java
String viewId = "com.example.myview";
String secondaryId = "mySecondaryId";
IWorkbenchPage page = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage();
IViewPart view = page.findView(viewId, secondaryId);
if (view != null) {
// 找到了具有指定 secondaryId 的视图实例
// 在此处添加你的代码,以使用找到的视图实例
} else {
// 没有找到具有指定 secondaryId 的视图实例
}
```
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)