pyqt5 做一个下拉框和多个文本框,每点选下拉框的一个选项就往光标所在文本框里添加文本。每个文本框都有些种功能。
时间: 2023-05-21 21:07:35 浏览: 111
可以通过以下代码实现上述功能:
```python
import sys
from PyQt5.QtWidgets import QApplication, QWidget, QComboBox, QLineEdit, QTextEdit, QVBoxLayout
class Example(QWidget):
def __init__(self):
super().__init__()
self.initUI()
def initUI(self):
self.combo = QComboBox(self)
self.combo.addItem('Option 1')
self.combo.addItem('Option 2')
self.combo.addItem('Option 3')
self.textbox1 = QLineEdit(self)
self.textbox1.returnPressed.connect(self.addText)
self.textbox2 = QTextEdit(self)
vbox = QVBoxLayout()
vbox.addWidget(self.combo)
vbox.addWidget(self.textbox1)
vbox.addWidget(self.textbox2)
self.setLayout(vbox)
self.setGeometry(300, 300, 300, 200)
self.setWindowTitle('Combo and Textbox')
self.show()
def addText(self):
text = self.textbox1.text()
index = self.combo.currentIndex()
if index == 0:
self.textbox2.append('You selected Option 1, and entered: ' + text)
elif index == 1:
self.textbox2.append('You selected Option 2, and entered: ' + text)
elif index == 2:
self.textbox2.append('You selected Option 3, and entered: ' + text)
self.textbox1.setText('')
if __name__ == '__main__':
app = QApplication(sys.argv)
ex = Example()
sys.exit(app.exec_())
```
这段代码会生成一个下拉框和两个文本框。每次在下拉框中选择一个选项,然后在光标所在的文本框中输入一些文本,按 Enter 键,就会在另一个文本框中添加一些文本。每个选项都有不同的文本框,其中 Option 1 对应第一个文本框,Option 2 对应第二个文本框,Option 3 对应第三个文本框。这些功能可以通过 PyQT5 轻松实现。
阅读全文