Devik Asked:2022-09-23 05:12:35 +0000 UTC2022-09-23 05:12:35 +0000 UTC 2022-09-23 05:12:35 +0000 UTC 在 Pyside6 上失去焦点 QLineEdit 后进行验证 772 您需要在QLineEdit失去焦点后执行某个功能,\例如,单击一个按钮或选择另一个QLineEdit. python 0 个回答 Voted Best Answer S. Nick 2022-09-23T05:34:26Z2022-09-23T05:34:26Z 您徒劳地删除了这个问题,您在其中更详细地描述了您将要做什么并提供了一个代码示例。 所以 - 你没有回答为什么你决定使用小部件QLineEdit。 我建议您使用年龄字段的小部件QSpinBox。 将导入更改为您自己的(PySide6)并尝试。你不能输入任何东西18 <= age <= 80 import sys ''' from PySide6.QtCore import (QCoreApplication, QDate, QDateTime, QLocale, QMetaObject, QObject, QPoint, QRect, QSize, QTime, QUrl, Qt) from PySide6.QtGui import (QBrush, QColor, QConicalGradient, QCursor, QFont, QFontDatabase, QGradient, QIcon, QImage, QKeySequence, QLinearGradient, QPainter, QPalette, QPixmap, QRadialGradient, QTransform) from PySide6.QtWidgets import (QApplication, QGridLayout, QHBoxLayout, QLabel, QLineEdit, QMainWindow, QSizePolicy, QWidget) ''' from PyQt5 import QtCore, QtGui, QtWidgets from PyQt5.Qt import * # ??? from test import * class Ui_MainWindow(object): def setupUi(self, MainWindow): if not MainWindow.objectName(): MainWindow.setObjectName(u"MainWindow") MainWindow.resize(371, 118) self.centralwidget = QWidget(MainWindow) self.centralwidget.setObjectName(u"centralwidget") self.gridLayout = QGridLayout(self.centralwidget) self.gridLayout.setObjectName(u"gridLayout") self.label = QLabel(self.centralwidget) self.label.setObjectName(u"label") # self.lineEdit = QLineEdit(self.centralwidget) self.spinBox = QSpinBox(self.centralwidget) # !!! + self.label_2 = QLabel(self.centralwidget) self.label_2.setObjectName(u"label_2") self.lineEdit_2 = QLineEdit(self.centralwidget) self.lineEdit_2.setObjectName(u"lineEdit_2") self.gridLayout.addWidget(self.label, 0, 0) self.gridLayout.addWidget(self.spinBox, 0, 1) # !!! + self.gridLayout.addWidget(self.label_2, 1, 0) self.gridLayout.addWidget(self.lineEdit_2, 1, 1) MainWindow.setCentralWidget(self.centralwidget) self.retranslateUi(MainWindow) QMetaObject.connectSlotsByName(MainWindow) def retranslateUi(self, MainWindow): MainWindow.setWindowTitle(QCoreApplication.translate("MainWindow", u"MainWindow", None)) self.label.setText(QCoreApplication.translate("MainWindow", u"\u0412\u043e\u0437\u0440\u0430\u0441\u0442", None)) self.label_2.setText(QCoreApplication.translate("MainWindow", u"\u0427\u0442\u043e-\u0442\u043e \u0434\u0440\u0443\u0433\u043e\u0435", None)) class Test(QMainWindow, Ui_MainWindow): def __init__(self): super(Test, self).__init__() self.setupUi(self) self.spinBox.setRange(18, 80) # !!! + if __name__ == "__main__": app = QApplication(sys.argv) app.setFont(QtGui.QFont("Times", 12, QtGui.QFont.Bold)) window = Test() window.show() sys.exit(app.exec())
您徒劳地删除了这个问题,您在其中更详细地描述了您将要做什么并提供了一个代码示例。
所以 - 你没有回答为什么你决定使用小部件
QLineEdit。我建议您使用年龄字段的小部件
QSpinBox。将导入更改为您自己的(PySide6)并尝试。你不能输入任何东西
18 <= age <= 80