我是PyQt4的新用户,我试图允许我的程序在整个程序的不同时间在状态栏上设置不同的消息,但我似乎无法在其上显示任何文本。
GUI是在Qt Designer中设计的,在pyuic生成的文件中,它给了我:
self.statusbar = QtGui.QStatusBar(MainWindow)
self.statusbar.setObjectName(_fromUtf8("statusbar"))
MainWindow.setStatusBar(self.statusbar)
在setupUI函数内部。
当我致电self.ui.statusBar.showMessage('Ready')
时,它会返回:
AttributeError: 'builtin_function_or_method' object has no attribute 'showMessage'
但是当我打电话时:
self.ui.statusBar().showMessage('Ready')
我没有错误,但状态栏仍为空白,并且未显示“就绪”。
有人能指出我做错了什么或错过了吗?
谢谢!
答案 0 :(得分:4)
你没有打电话给statusBar
使用self.statusBar.showMessage('Ready')
,您将调用statusBar方法的showMessage属性
您应该使用self.statusBar().showMessage('Ready')
,您可以在其中获取调用statusBar方法的状态栏。