pyqt5中实现下拉多选
时间: 2023-07-03 20:17:15 浏览: 215
Python3使用PyQt5制作简单的画板/手写板实例
在 PyQt5 中实现下拉多选可以使用 QComboBox 和 QListView 组合的方式。具体步骤如下:
1. 创建 QComboBox 对象;
2. 设置 QComboBox 的下拉列表视图为 QListView;
3. 设置 QListView 的选择模式为多选;
4. 为 QComboBox 设置 model,可使用 QStringListModel 或自定义 QAbstractItemModel 的子类;
5. 将数据添加到 model 中。
示例代码如下:
```python
from PyQt5.QtWidgets import QApplication, QComboBox, QListView, QStringListModel
app = QApplication([])
combo = QComboBox()
combo.setView(QListView())
combo.view().setSelectionMode(QListView.MultiSelection)
model = QStringListModel()
model.setStringList(['Apple', 'Banana', 'Cherry', 'Durian', 'Eggplant'])
combo.setModel(model)
combo.show()
app.exec_()
```
运行代码后,可以看到一个下拉框,下拉框中的列表可以进行多选操作。选择的结果可以通过 combo.view().selectedIndexes() 获取。
阅读全文