是的,PyQt中的QListView控件支持选中多个项。可以通过设置其selectionMode属性来实现多选功能。例如,将其selectionMode属性设置为QAbstractItemView.ExtendedSelection即可实现可扩展选择模式,用户可以使用鼠标和键盘多选列表中的项。
以下是一个简单示例代码:
from PyQt5.QtWidgets import QApplication, QMainWindow, QListView, QWidget, QVBoxLayout
from PyQt5.QtCore import Qt
class MainWindow(QMainWindow):
def __init__(self):
super().__init__()
self.initUI()
def initUI(self):
self.setGeometry(100, 100, 500, 400)
# 创建一个QListWidget控件并设置为可多选
self.listView = QListView(self)
self.listView.setSelectionMode(QAbstractItemView.ExtendedSelection)
# 添加一些项目到列表中
items = ['Item1', 'Item2', 'Item3', 'Item4']
model = QStringListModel()
model.setStringList(items)
self.listView.setModel(model)
# 将listView添加到窗口中
layout = QVBoxLayout()
layout.addWidget(self.listView)
widget = QWidget()
widget.setLayout(layout)
self.setCentralWidget(widget)
if __name__ == '__main__':
app = QApplication([])
window = MainWindow()
window.show()
app.exec_()
在这个示例代码中,我们创建了一个QListView控件并将其设置为可扩展选择模式(即ExtendedSelection)。用户可以使用鼠标和键盘多选列表中的项。