QLineEdit 校验器Validator

QLineEdit 校验器

from PyQt5.QtCore import QRegExp
from PyQt5.QtGui import QRegExpValidator, QIntValidator
from PyQt5.QtWidgets import *
import sys

class QLineEditValidator(QWidget):
    def __init__(self):
        super().__init__()
        self.initUI()

    def initUI(self):
        self.setWindowTitle("文本输入框的校验器")

        formLayout = QFormLayout()

        ipLineEdit = QLineEdit()
        portLineEdit = QLineEdit()

        portValidator = QIntValidator(0,65536)
        regExp = QRegExp('^((2[0-4]\d|25[0-5]|\d?\d|1\d{2})\.){3}(2[0-4]\d|25[0-5]|[01]?\d\d?)$')
        ipValidator = QRegExpValidator(regExp)

        ipLineEdit.setValidator(ipValidator)
        portLineEdit.setValidator(portValidator)

        formLayout.addRow("IP", ipLineEdit)
        formLayout.addRow("Port", portLineEdit)

        self.setLayout(formLayout)


if __name__ == '__main__':
    app = QApplication(sys.argv)
    main = QLineEditValidator()
    main.show()
    sys.exit(app.exec_())

运行:

猜你喜欢

转载自www.cnblogs.com/jxu25/p/11002509.html