Python2.7+PyQt4.10:如何设置QComboBox默认值为空(数据源无空值)
嘿,这个问题我之前做PyQt4项目时也碰到过,刚好有两个靠谱的解决方案,你可以根据自己的需求选:
方案1:添加空选项作为默认项
如果希望下拉列表里直接包含一个空选项,那最简单的办法就是在添加数据库返回的item_all列表之前,先给QComboBox插一个空item:
# 先插入空项,作为默认显示 self.comboBox.addItem("") # 再循环添加数据库里的所有项 for item in item_all: self.comboBox.addItem(item)
这样默认选中的就是第一个空项,完全不用修改数据库返回的item_all列表,完美满足你的要求。
方案2:设置无选中项(仅初始显示为空)
要是你不想下拉列表里出现空选项,只是希望初始状态下ComboBox显示为空,那可以直接设置当前选中索引为-1:
# 先正常添加所有数据库返回的项 for item in item_all: self.comboBox.addItem(item) # 设置无选中项,此时ComboBox就会显示为空 self.comboBox.setCurrentIndex(-1)
这个方法的优势是下拉列表里只有数据库的内容,但初始状态不会默认选中任何一项,视觉上就是空的。
内容的提问来源于stack exchange,提问作者Ahmed Wagdi
相关产品推荐
相关产品推荐

