Что вы поменяли между тем, что оно работает и не работает?
Для тестового кода, не зная, что делает класс Ui_LQNotepad
, сложно сказать, но объекты QMainWindow
не имеют атрибута filename
, поэтому ваш код никогда не будет работать. Я подозреваю, что вы можете иметь в виду self.ui.filename
, но я не могу с уверенностью сказать, что класс Ui_LQNotepad
имеет атрибут filename
. Найдите в своем коде filename
, и вы увидите, что вы когда-либо читали только этот атрибут, но никогда не устанавливали его. Откуда это имя файла?
Мне не ясно, в чем разница между вашим тестовым приложением и основным кодом, они кажутся примерно одинаковыми, поэтому я думаю, что то же самое относится и к этому.
Обратите внимание, что в будущем будет полезно, если вы опубликуете полный отчет о трассировке, а также сообщение об исключении.