我对这段代码有疑问。
projList
是list
类型的变量。 self.projPicker
是QComboBox
的实例。
self.projPicker.addItems(projList)
self.projPicker.currentTextChanged.connect(self.itemListChange)
def itemListChange(self,value):
self.projPathLbl.setText("Project : " + value)
def itemListUpdate(self):
comboItems = []
for item in range (self.projPicker.count()):
comboItems.append(self.projPicker.itemText(item))
print(comboItems)
使用此代码,当我在组合框中添加文本时,每次键入字符时,self.projPathLbl
都会使用itemListChange()
函数进行更新。
我的问题是,它与itemListUpdate()
的工作方式不同。
使用此功能,我需要点击Return键才能使更新生效。
如何以更新self.projPathLbl
列表的方式更新comboItems
标签(使用Return键验证)?
答案 0 :(得分:0)
也许一种方法是将QComboBox实现为具有已实现的按键事件的自定义类,如下所示:PyQt Connect to KeyPressEvent
在按键实现中,您可以过滤回车键并发出信号,您可以将其连接到itemListChange插槽。