pyqt中combobox选中项变化函数
时间: 2024-05-12 21:13:33 浏览: 117
pyqt5 comboBox获得下标、文本和事件选中函数的方法
在PyQt中,可以使用 `currentIndexChanged` 信号来检测ComboBox的选中项是否发生了变化。当ComboBox的选中项变化时,该信号会被自动触发,并且会将新的选中项的索引作为参数传递给与该信号相连的槽函数。
以下是一个示例代码:
``` python
from PyQt5.QtWidgets import QApplication, QComboBox, QWidget
import sys
class Example(QWidget):
def __init__(self):
super().__init__()
self.initUI()
def initUI(self):
self.combo = QComboBox(self)
self.combo.addItem("Item 1")
self.combo.addItem("Item 2")
self.combo.addItem("Item 3")
self.combo.addItem("Item 4")
self.combo.move(50, 50)
self.combo.currentIndexChanged.connect(self.selectionChange)
self.setGeometry(300, 300, 300, 200)
self.setWindowTitle('ComboBox Example')
self.show()
def selectionChange(self, i):
print("Selected index ",i ," with text ",self.combo.currentText())
if __name__ == '__main__':
app = QApplication(sys.argv)
ex = Example()
sys.exit(app.exec_())
```
在这个例子中,我们创建了一个ComboBox,并在其 `currentIndexChanged` 信号上连接了 `selectionChange` 槽函数。每当ComboBox的选中项发生变化时,`selectionChange` 槽函数会被触发,并且会将新的选中项的索引作为参数传递给它。在这个函数中,我们打印出了新选中项的索引和文本。
阅读全文