pyqt5中,QComboBox 展示[{'key': 'value},{'key1': 'value}]中的value,但是选中之后,怎么区分是key还是key1
时间: 2023-12-19 14:06:34 浏览: 150
选择一个选项后可以返回一个值的ComboBox
4星 · 用户满意度95%
可以使用QComboBox的itemData()函数来获取选中项的关联数据,这个函数可以获取到每个选项的键值对,你可以在键值对中添加一个标记来区分是key还是key1,然后在获取选中项的数据时,再根据这个标记来进行区分。
以下是一个示例代码:
```python
# 创建一个QComboBox对象
combobox = QComboBox()
# 添加选项
items = [{'key': 'value1'}, {'key1': 'value2'}]
for item in items:
combobox.addItem(list(item.values())[0], item)
# 获取选中项的数据
selected_data = combobox.itemData(combobox.currentIndex())
# 区分key还是key1
if 'key' in selected_data:
print('选中了key')
else:
print('选中了key1')
```
在这个例子中,我们将每个选项的数据设置为一个字典,包含key和value。然后在获取选中项的数据时,我们可以判断这个字典中是否有key这个键,来区分是哪个选项。
阅读全文