Можно ли связать событие с меню вместо пункта меню в wxPython? - PullRequest
0 голосов
/ 18 ноября 2008

Нечего добавить

1 Ответ

2 голосов
/ 18 ноября 2008

Хотите ли вы событие, когда ваше меню открывается? Используйте EVT_MENU_OPEN(func) (wxMenuEvent). Но это не совсем точно. Как сказано в документации, она отправляется только один раз, если вы открываете меню. Для другого события вы должны закрыть его и снова открыть другое меню. Т.е. между ними вы можете открыть другие меню (при наведении курсора на другие элементы в строке меню), и событие больше не будет отправлено.

Для чего тебе это нужно? Вероятно, есть другой способ сделать это, вместо прослушивания такого рода событий.

Если вы хотите событие для всех пунктов меню, используйте EVT_MENU_RANGE(id1, id2, func) (используется wxCommandEvent). Все идентификаторы, начиная с id1 до id2 включительно, будут подключены к данному обработчику событий. Использование диапазона вместо подключения каждого отдельного элемента обеспечит лучшую производительность, поскольку в списке обработчиков событий меньше элементов.

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