Python 如何在PyQt5 InputDialog中获取更多输入文本?
我想从PyQt5.qtDialog中的用户处获取多个输入文本。。。在这段代码中,我可以只得到一个输入文本框,当我点击按钮时,我想得到更多的输入文本框。查看图片以了解更多信息 来自PyQt5.qtwidts导入的Python 如何在PyQt5 InputDialog中获取更多输入文本?,python,python-3.x,pyqt,pyqt5,Python,Python 3.x,Pyqt,Pyqt5,我想从PyQt5.qtDialog中的用户处获取多个输入文本。。。在这段代码中,我可以只得到一个输入文本框,当我点击按钮时,我想得到更多的输入文本框。查看图片以了解更多信息 来自PyQt5.qtwidts导入的(QApplication、QWidget、QPushButton、QLineEdit、QInputDialog、QHBoxLayout) 导入系统 类FD(QWidget): 定义初始化(自): super()。\uuuu init\uuuuu() self.mysf() def mys
(QApplication、QWidget、QPushButton、QLineEdit、QInputDialog、QHBoxLayout)
导入系统
类FD(QWidget):
定义初始化(自):
super()。\uuuu init\uuuuu()
self.mysf()
def mysf(self):
hbox=QHBoxLayout()
self.btn=QPushButton('ClickMe',self)
self.btn.clicked.connect(self.sd)
hbox.addWidget(self.btn)
hbox.addStretch(1)
self.le=QLineEdit(self)
hbox.addWidget(self.le)
self.setLayout(hbox)
self.setWindowTitle(“InputDialog”)
自设置几何体(300290150)
self.show()
def sd(自我):
text,ok=QInputDialog.getText(self,'InputDialog','EnterYourName=')
如果确定:
self.le.setText(str(text))
如果uuuu name uuuuuu='\uuuuuuu main\uuuuuuu':
app=QApplication(sys.argv)
F=FD()
sys.exit(app.exec_())
QInputDialog
是一个方便的类,用于从用户检索单个输入
如果需要更多字段,请使用QDialog
例如:
class InputDialog(QDialog):
def __init__(self, parent=None):
super().__init__(parent)
self.first = QLineEdit(self)
self.second = QLineEdit(self)
buttonBox = QDialogButtonBox(QDialogButtonBox.Ok | QDialogButtonBox.Cancel, self);
layout = QFormLayout(self)
layout.addRow("First text", self.first)
layout.addRow("Second text", self.second)
layout.addWidget(buttonBox)
buttonBox.accepted.connect(self.accept)
buttonBox.rejected.connect(self.reject)
def getInputs(self):
return (self.first.text(), self.second.text())
if __name__ == '__main__':
import sys
app = QApplication(sys.argv)
dialog = InputDialog()
if dialog.exec():
print(dialog.getInputs())
exit(0)