Найти - Пользователи
Полная версия: PyQt перехватывает исключения
Начало » GUI » PyQt перехватывает исключения
1
Mehanoid
В PyQt есть такая бяка: если где-нибудь в слоте возникает неперехваченное исключение, то PyQt его перехватывает, сыпет информацию об исключении в консоль, и продолжает дальше работать как ни в чём не бывало. Такое поведение не совсем устраивает, можно какую-нибудь ошибку и пропустить случайно. Так я и не понял, можно ли как-то изменить такое поведение? Переопределением QApplication.notify, как я понял, это не сделать
reclosedev
Перехватить исключения у PyQt можно с помощью sys.excepthook. У меня в одной программе вот так:

import sys
import traceback
...
def exception_hook(type_, value, tb):
    logger.error('Unhandled top level exception:\n%s', ''.join(traceback.format_exception(type_, value, tb)))
...
if __name__ == '__main__':
    sys.excepthook = exception_hook
    ...


Mehanoid
Спасибо! То, что надо!
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB