我想使用QComboBox与元组中的"键"和"值"类似于django模型中使用的元组.例如,我有一个人的性别以下结构.
SEX_CHOICES = (('M', 'Male'), ('F', 'Female'))
Run Code Online (Sandbox Code Playgroud)
元组的第一项包含存储在数据库中的性别代码,第二项是我想在QComboBox中作为项目显示的文本.
有没有办法我可以将QComboBox值设置为M并显示Male.当用户选择元素时,我也可以将所选值作为M.
谢谢
使用
cb.addItem ( text, userData )
Run Code Online (Sandbox Code Playgroud)
并传递DB密钥为userData
.如果您需要更改当前选择,请使用cb.itemData()
获取每个项目的数据库键并将其与您需要的项目进行比较.
或者,在Python地图中添加项目时记录索引,并使用它直接查找正确的索引.
为了使事情更容易使用,请QComboBox
使用Python类包装,该类为当前数据库密钥提供setter和getter,并隐藏映射.
归档时间: |
|
查看次数: |
4261 次 |
最近记录: |