PyQt5属性错误:' GUI'对象没有属性' setLayout'

时间:2016-09-23 18:41:07

标签: python python-3.x pyqt5

运行代码时似乎存在属性错误。具体来说,我遇到的错误是:

AttributeError: 'GUI' object has no attribute 'setLayout'

我目前正在使用的代码:

class GUI(object):
    def __init__(self):
        super(GUI,self).__init__()
        self.initUI()

    def initUI(self):
        review = QtWidgets.QLabel('Review')
        reviewEdit = QtWidgets.QTextEdit()
        grid = QtWidgets.QGridLayout()

        grid.addWidget(review, 3, 0)
        grid.addWidget(reviewEdit, 3, 1, 5, 1)
        self.setLayout(grid)
        self.setGeometry(300,300,350,300)
        self.setWindowTitle('Sentiment Analysis')
        self.show()

1 个答案:

答案 0 :(得分:2)

您收到属性错误,因为您的班级和object都没有定义您尝试通过self访问的方法。您需要从定义它们的Qt类继承它们。例如,继承自QWidget

from PyQt5 import QtWidgets

class GUI(QtWidgets.QWidget):
     ...

将为您的课程提供这些功能。用适当的PyQt基类替换您的用例以获得功能。