原文: https://pythonspot.com/pyqt5-textbox-example/

在本文中,您将学习如何在 PyQt5 中使用文本框。 该小部件称为QLineEdit,并具有setText()来设置文本框值的方法,以及text()来获取值的方法。

我们可以使用resize(width, height)方法设置文本框的大小。 可以使用move(x, y)方法或使用网格布局来设置位置。

PyQt5 文本框

创建文本框非常简单:

  1. self.textbox = QLineEdit(self)
  2. self.textbox.move(20, 20)
  3. self.textbox.resize(280,40)

PyQt5 文本框示例 - 图1

PyQt5 文本框示例

下面的示例创建一个带有文本框的窗口。

  1. import sys
  2. from PyQt5.QtWidgets import QMainWindow, QApplication, QWidget, QPushButton, QAction, QLineEdit, QMessageBox
  3. from PyQt5.QtGui import QIcon
  4. from PyQt5.QtCore import pyqtSlot
  5. class App(QMainWindow):
  6. def __init__(self):
  7. super().__init__()
  8. self.title = 'PyQt5 textbox - pythonspot.com'
  9. self.left = 10
  10. self.top = 10
  11. self.width = 400
  12. self.height = 140
  13. self.initUI()
  14. def initUI(self):
  15. self.setWindowTitle(self.title)
  16. self.setGeometry(self.left, self.top, self.width, self.height)
  17. # Create textbox
  18. self.textbox = QLineEdit(self)
  19. self.textbox.move(20, 20)
  20. self.textbox.resize(280,40)
  21. # Create a button in the window
  22. self.button = QPushButton('Show text', self)
  23. self.button.move(20,80)
  24. # connect button to function on_click
  25. self.button.clicked.connect(self.on_click)
  26. self.show()
  27. @pyqtSlot()
  28. def on_click(self):
  29. textboxValue = self.textbox.text()
  30. QMessageBox.question(self, 'Message - pythonspot.com', "You typed: " + textboxValue, QMessageBox.Ok, QMessageBox.Ok)
  31. self.textbox.setText("")
  32. if __name__ == '__main__':
  33. app = QApplication(sys.argv)
  34. ex = App()
  35. sys.exit(app.exec_())

下载 PyQT 代码(批量收集)