pyqt5 选择下拉菜单并同时修改另一个文本框的值
可以使用
QComboBox
和QLineEdit
两个控件实现此功能。当下拉菜单的选项改变时,触发currentIndexChanged
信号,从而修改文本框的值。 示例代码如下:
from PyQt5.QtWidgets import QApplication, QWidget, QComboBox, QLineEdit, QVBoxLayout import sys class Example(QWidget): def __init__(self): super().__init__() self.initUI() def initUI(self): # 创建下拉菜单 self.cb = QComboBox(self) self.cb.addItem('Option 1') self.cb.addItem('Option 2') self.cb.addItem('Option 3') self.cb.currentIndexChanged.connect(self.onIndexChanged) # 创建文本框 self.le = QLineEdit(self) self.le.setText('Option 1') # 布局 vbox = QVBoxLayout() vbox.addWidget(self.cb) vbox.addWidget(self.le) self.setLayout(vbox) self.setGeometry(300, 300, 300, 150) self.setWindowTitle('QComboBox') self.show() def onIndexChanged(self): # 修改文本框的值 self.le.setText(self.cb.currentText()) if __name__ == '__main__': app = QApplication(sys.argv) ex = Example() sys.exit(app.exec_()) 运行后,可以看到一个下拉菜单和一个文本框。当选择下拉菜单的选项时,文本框的值会随之改变。
评论