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来定制数据的显示方式

pyqt5中的listview的用法

原文地址: https://www.cveoy.top/t/topic/hhFK 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录