原文: https://pythonbasics.org/pyqt-input-dialog/

开箱即用地支持 PyQt 中的输入对话框(QInputDialog)。 它具有输入文本,确定和取消按钮。

在本文中,您将看到它在 PyQt 中有效。 如屏幕截图所示

PyQt 输入对话框 - 图1

输入对话框

示例

下面的代码创建一个 PyQt 输入对话框。 单击按钮后,您可以输入一些文本。 文本显示为标签。

该对话框是使用showDialog方法创建的,仅几行。 输入方言是PyQt5.QtWidgets的一部分。

  1. from PyQt5.QtWidgets import (QWidget, QPushButton, QLineEdit, QInputDialog, QApplication, QLabel)
  2. import sys
  3. class Example(QWidget):
  4. def __init__(self):
  5. super().__init__()
  6. self.initUI()
  7. def initUI(self):
  8. # Add button
  9. self.btn = QPushButton('Show Input Dialog', self)
  10. self.btn.move(30, 20)
  11. self.btn.clicked.connect(self.showDialog)
  12. # Add label
  13. self.le = QLabel(self)
  14. self.le.move(30, 62)
  15. self.le.resize(400,22)
  16. self.setGeometry(300, 300, 290, 150)
  17. self.setWindowTitle('Input dialog')
  18. self.show()
  19. def showDialog(self):
  20. text, ok = QInputDialog.getText(self, 'Input Dialog', 'Enter text:')
  21. if ok:
  22. self.le.setText(str(text))
  23. if __name__ == '__main__':
  24. app = QApplication(sys.argv)
  25. ex = Example()
  26. sys.exit(app.exec_())