PyQt5 QListWidget是一个高效的列表控件,可以用来显示一组数据,并允许用户在列表中选择一个或多个项目。它可以被用来构建一个简单的列表或一个复杂的列表,可以显示文本、图标、文本和图标混合等。
使用PyQt5 QListWidget的基本流程如下:
1. 创建一个QListWidget对象。
2. 创建一个QListWidgetItem对象,将其添加到QListWidget中。
3. 设置QListWidgetItem的文本、图标、前景色、背景色等属性。
4. 通过QListWidget的addItem()、insertItem()、takeItem()等方法,添加、删除、插入等操作。
5. 通过QListWidget的itemClicked()、itemSelectionChanged()等信号,处理用户点击或选择列表项的事件。
6. 通过QListWidget的clear()、sortItems()等方法,清除列表项或对列表项进行排序等操作。
下面是一个使用PyQt5 QListWidget的示例代码,实现了一个简单的列表,可以添加、删除和清除列表项,并处理用户点击列表项的事件:
import sys from PyQt5.QtWidgets import QApplication, QWidget, QListWidget, QPushButton class MyWidget(QWidget): def __init__(self): super().__init__() self.initUI() def initUI(self): self.listWidget = QListWidget(self) self.listWidget.move(20, 20) self.listWidget.resize(200, 200) self.addBtn = QPushButton('添加', self) self.addBtn.move(240, 20) self.delBtn = QPushButton('删除', self) self.delBtn.move(240, 60) self.clearBtn = QPushButton('清除', self) self.clearBtn.move(240, 100) self.resize(300, 300) self.addBtn.clicked.connect(self.addItem) self.delBtn.clicked.connect(self.delItem) self.clearBtn.clicked.connect(self.clearItem) self.listWidget.itemClicked.connect(self.listItemClicked) def addItem(self): self.listWidget.addItem('新项') def delItem(self): row = self.listWidget.currentRow() self.listWidget.takeItem(row) def clearItem(self): self.listWidget.clear() def listItemClicked(self, item): print(item.text()) if __name__ == '__main__': app = QApplication(sys.argv) ex = MyWidget() ex.show() sys.exit(app.exec_())
上面的代码创建了一个QListWidget对象,创建了三个按钮,用于添加、删除和清除列表项,并为每个按钮连接了相应的槽函数。还为QListWidget的itemClicked()信号连接了一个槽函数,用于处理用户点击列表项的事件。
本文链接:http://task.lmcjl.com/news/517.html