Отображение / скрытие SWT-меню во время выполнения - PullRequest
1 голос
/ 19 марта 2012

Я пытаюсь динамически показать / скрыть (или создать / удалить) SWT-меню (через JFace MenuManager) во время выполнения на основе простого события.Более конкретно, когда нужный элемент управления активирован, я хотел бы показать дополнительное меню в строке меню.Как только оно деактивируется, добавленное меню должно исчезнуть.Примерно так:

addListener(SWT.Activate, new Listener(){
    public void handleEvent(Event event) {
        showAdditionalMenuManager();
    }
});

addListener(SWT.Deactivate, new Listener(){
    public void handleEvent(Event event) {
        hideAdditionalMenuManager();
    }
});

Слушатели определенно работают, но я попробовал как setVisible (), так и избавиться / воссоздать меню (удаление дает результаты, воссоздание - нет) без удачи.Любая помощь будет высоко ценится.

1 Ответ

1 голос
/ 19 марта 2012

Хм, я подозреваю, что менеджер родительского меню не обновлен должным образом ... здесь нет автоматики ... Вы также должны вызвать parent.updateAll(true) для родителя И возможно parent.remove(additionalMenuManager) первый.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...