我仍然是Qt的新手,但我正在开发一种计算器,并希望使用组合框来选择系数。我已经成功地在pyGT中创建了一个带有liststore的组合框,但是看起来pyQT是完全不同的。
我很难绕过数据模型和列表模型。基本上我想在组合框中显示一个名称,并将该名称的值传递给计算器方程式。到目前为止,我所见过的所有内容都只是针对单个条目而不是“关联”条目。
任何人都可以向我解释或指向一个教程,指导我完成我想要完成的任务吗?
答案 0 :(得分:5)
您可以使用addItem添加具有关联值(数据)的名称(文本):
self.combo.addItem('Foo', 23)
self.combo.addItem('Bar', 42)
可以将一个插槽连接到组合框的activated信号,该信号将发送用户选择的项目的索引:
self.combo.activated.connect(self.handleActivated)
然后,您可以使用itemText和itemData通过index
参数访问名称和值:
def handleActivated(self, index):
print(self.combo.itemText(index))
print(self.combo.itemData(index))