PyQt4应用程序启动

时间:2011-10-03 08:14:20

标签: python pyqt4

好吧,所以我有两个现在无法启动的应用程序,一个重要的应用程序和一个测试用程序,一个用于运行的测试,但现在它说:AttributeError: 'StartQt4' object has no attribute 'filename'

所以,我不知道为什么会这样,只有在我尝试使用保存功能或打开功能时才会发生。

以下是该应用的启动代码:

Link to the code

现在,重要的应用程序是针对学校的项目,我已经在PyQt中创建了它,并且尝试使用以下代码启动它: Code

如果您需要ui文件到第二个代码,请询问并发布DL链接。

我很乐意让这两个人尽快工作!关于一些优秀的PyQt教程的任何提示?它们还必须与Python 3兼容......

3 个答案:

答案 0 :(得分:0)

你在工作和不工作之间做了什么改变?

对于测试代码而不知道Ui_LQNotepad类的内容很难说,但QMainWindow个对象没有filename属性,因此您给出的代码将永远不会有效。我怀疑你的意思可能是self.ui.filename,但我不能确定Ui_LQNotepad类有filename属性。搜索您的代码filename,您将看到您只读过该属性,您从未设置它。这个文件名应该从哪里来?

我不清楚您的测试应用程序和主要代码的区别,它们似乎几乎相同,所以我认为同样适用于此。

请注意,如果您发布完整的回溯以及异常消息,将来会有所帮助。

答案 1 :(得分:0)

答案是例外:'StartQt4'对象没有属性'filename'。

只需在filename中添加__init__属性。

def __init__(self, parent=None):
    QtGui.QWidget.__init__(self, parent)
    self.ui = Ui_LQNotepad()
    self.ui.setupUi(self)
    QtCore.QObject.connect(self.ui.button_open,QtCore.SIGNAL("clicked()"), self.file_dialog)
    QtCore.QObject.connect(self.ui.button_save,QtCore.SIGNAL("clicked()"), self.file_save)
    QtCore.QObject.connect(self.ui.charInput,QtCore.SIGNAL("textChanged()"), self.enable_save) 
    self.filename = ""
    self.ui.button_save.setEnabled(False)

答案 2 :(得分:0)

修正了一个问题,在测试代码中,带有教程的网站实际上出现了错误,所以我自己发现了,而我的项目代码在导入一个无用且只是导致错误的模块时遇到了问题。 / p>