![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() |
Andrewshkovskii |
![]()
Сообщение
#1
|
Активный участник ![]() ![]() ![]() Группа: Участник Сообщений: 351 Регистрация: 27.12.2008 Пользователь №: 467 Спасибо сказали: 18 раз(а) Репутация: ![]() ![]() ![]() |
PyQt - PyQt-Py2.7-x86-gpl-4.8.4-1.exe (SIP там вроде 4.12.1 вроде, но не могу сказать точно)
Собственно сабж , такой экспешен райситься после таких вещей: виджету подменяется метод contextMenuEvent на следующую функцию:
widget.contextMenuEvent=create_context_menu(cmWrapper([{'action_title':action_handler}])) Что делает этот код? В он заменяет ивен вызова контекстного меню на кастомное меню, которое создается путем задания конфига (хэш в __init__ у cmWrapper). Эксепшен прилетает после отработки хэндлера экшена. Код отрабатывается, приложение не крашиться. Просто хотелось бы понять, откуда эксепшен летит и почему. Для чего это нужно - что бы не писать методы создания менюшек для каждого виджета, а использовать так - как показано. все это добро прилетает вот отсюда (исходники последнего sip)
мне кажется тут 2 пути решения - 1. Проверить - жива ли функция которая вернулась лямбдой после отработки хэндлера. 2 Собрать свежий SIP и PyQt и попробовать. Больше у меня мыслей, пока, нет. |
|
|
![]() ![]() ![]() |
![]() |
|
Текстовая версия | Сейчас: 4.5.2025, 23:01 |