QListWidget 错误未定义

0 投票
1 回答
1301 浏览
提问于 2025-04-18 06:28

我想做一个带滚动条的QListwidget。我是pyqt的新手,正在努力理解它。我想用下面的代码来创建它,但结果是错的。

self.list = QListWidget(self)
data = QListWidgetItem(list)
data.setText('1')

self.list = QListWidget(self)
    NameError: global name 'QListWidget' is not defined

如果有人能告诉我为什么错了,我会很感激。

1 个回答

4

QListWidget 是在 QtGui 这个模块里定义的。所以你需要以某种方式引用它。你可以用 from PyQt4.QtGui import QListWidget 这种方式来引入,或者像下面的例子那样,明确说明它的位置。

from PyQt4 import QtGui, QtCore

class MyWidget(QtGui.QWidget):
    def __init__(self, parent=None):
        super(MyWidget, self).__init__(parent)
        self.list = QtGui.QListWidget(self)
        self.list.addItems([str(i) for i in range(10)])
        layout = QtGui.QVBoxLayout(self)
        layout.addWidget(self.list)



if __name__ == '__main__':
    app = QtGui.QApplication([])
    ex = MyWidget()
    ex.show()
    app.exec_()

撰写回答