pyqt5中的listview的用法
PyQt5中的ListView是一个可以显示列表数据的控件,它使用Model/View架构来显示数据。ListView通常与Model和Delegate一起使用,其中Model提供数据,Delegate负责数据的显示。
下面是一个ListView的用法示例:
from PyQt5.QtWidgets import QApplication, QMainWindow, QListView, QWidget, QVBoxLayout
from PyQt5.QtCore import QStringListModel
class MainWindow(QMainWindow):
def __init__(self):
super().__init__()
# 创建一个QWidget作为主窗口的中心控件
central_widget = QWidget(self)
self.setCentralWidget(central_widget)
# 创建一个ListView
self.list_view = QListView(central_widget)
# 设置ListView的数据模型
self.list_model = QStringListModel()
self.list_model.setStringList(['item1', 'item2', 'item3'])
self.list_view.setModel(self.list_model)
# 将ListView添加到QWidget中
layout = QVBoxLayout(central_widget)
layout.addWidget(self.list_view)
if __name__ == '__main__':
app = QApplication([])
window = MainWindow()
window.show()
app.exec_()
在这个示例中,我们创建了一个包含三个字符串的字符串列表,并将其设置为ListView的数据模型。然后,我们将ListView添加到一个QWidget中,并将这个QWidget设置为主窗口的中心控件。
需要注意的是,我们使用了QStringListModel作为ListView的数据模型,它是一个专门用于处理字符串列表的Model类。如果需要显示其他类型的数据,可以使用其他类型的Model类,例如QStandardItemModel。同时,我们还可以自定义Delegate来定制数据的显示方式
原文地址: https://www.cveoy.top/t/topic/hhFK 著作权归作者所有。请勿转载和采集!