Форум сайта python.su
В PyQt есть такая бяка: если где-нибудь в слоте возникает неперехваченное исключение, то PyQt его перехватывает, сыпет информацию об исключении в консоль, и продолжает дальше работать как ни в чём не бывало. Такое поведение не совсем устраивает, можно какую-нибудь ошибку и пропустить случайно. Так я и не понял, можно ли как-то изменить такое поведение? Переопределением QApplication.notify, как я понял, это не сделать
Офлайн
Перехватить исключения у 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 ...
Отредактировано reclosedev (Апрель 6, 2012 13:35:52)
Офлайн
Спасибо! То, что надо!
Офлайн