Я создал функцию внутри моего проекта плагина (плагин, который содержит представление), который создает селекционные прослушиватели для активной страницы (например: explorer пакета, навигатор ресурсов).Как установить активную страницу при первом выполнении представления?
При первом выполнении экземпляра Eclipse, иногда у меня нет активной страницы и нижеследующее является недействительным:
ISelectionService selectionService=PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage();
Так что выбор слушатель не может быть выставиться на другую точку зрения:
selectionService.addSelectionListener(partID,listener);
Моя проблема в том, что функция не выполняет указанную выше строку, так как selectionService имеет значение NULL.
Что мне делать, чтобы избежать этой ситуации?
я получаю исключение виджет, расположенный .... как удалить все слушатели, когда я закрыть представление? (без удаления их по id) –
Вы можете использовать 'IPartService.addPartListener' из' IWokbenchWindow.getPartService' для прослушивания закрытия деталей (среди других событий). –
Я закрываю представление, и когда я его снова открываю, он не обновляется, потому что кнопки и таблицы и другие объекты на нем расположены .... это проблема с прослушивателем? –