天天看点

PyQt学习随笔:QtDesigner ListView控件列表项的初始化

在QtDesigner中设计的界面中添加ListView控件后,是没办法添加需要在ListView控件中显示的列表项。由于ListView控件只是一个展示列表项的视图控件,实现了界面与数据的分离,其要展示的数据是单独存储在对应类型如QStringListModel的列表中,因此对控件数据的初始化需要先为控件绑定对应的数据对象。下面是一个ListView控件初始化的代码:

self.itemmodel=QStringListModel(self)

self.itemmodel.setStringList([“item1”,“item2”])

self.listView.setModel(self.itemmodel)

第一行代码是新建一个数据存储,第二行代码是为这个数据存储设定初始值,第三行代码是将listView控件与该存储绑定,上述代码需要放到窗口对象构造方法内。

以构造一个窗口(w_ListView),在窗口中初始化一个列表窗(listView)的列表项为“item1、item2”为例:

如下:

class w_ListView(QtWidgets.QWidget,Ui_w_ListView ):

def init(self):

super(w_ListView, self).init()

self.setupUi(self)

运行界面如下:

PyQt学习随笔:QtDesigner ListView控件列表项的初始化