[python]PyQt5- QLineEdit和校驗器


校驗器:限制輸入的內容

import sys
from PyQt5.QtWidgets import *
from PyQt5.QtGui import *
from PyQt5.QtCore import *

class testLinEdit_002(QWidget):
    def __init__(self):
        super(testLinEdit_002,self).__init__()
        self.initUI()
    
    def initUI(self):
        self.setWindowTitle("校驗器")

        formLayout = QFormLayout()

    # 整數
        intLineEdit = QLineEdit()
        # 布局
        formLayout.addRow("整數",intLineEdit)
        # 提示文本
        intLineEdit.setPlaceholderText("僅可以輸入整數")
        # 整數校驗器[1,99]
        intValidator = QIntValidator(self)
        intValidator.setRange(1,99)
        # 設置校驗器
        intLineEdit.setValidator(intValidator)


    # 浮點數
        doubleLineEdit = QLineEdit()
        # 布局
        formLayout.addRow("浮點數",doubleLineEdit)
        # 提示文本
        doubleLineEdit.setPlaceholderText("僅可以輸入浮點數")
        # 整數校驗器[1,99]
        doubleValidator = QDoubleValidator(self)
        doubleValidator.setRange(-360,360)
        # 正常顯示浮點數
        doubleValidator.setNotation(QDoubleValidator.StandardNotation)
        # 設置精度,小數點后兩位
        doubleValidator.setDecimals(2)
        # 設置校驗器
        doubleLineEdit.setValidator(doubleValidator)

    # 字符
        validatorLineEdit = QLineEdit()
        # 布局
        formLayout.addRow("字符",validatorLineEdit)
        # 提示文本
        validatorLineEdit.setPlaceholderText("僅可以輸入字符")  
        # 限制
        reg = QRegExp('[a-zA-z0-9]+$')
        validator = QRegExpValidator(self)
        validator.setRegExp(reg)
        # 設置校驗器
        validatorLineEdit.setValidator(validator)

        # 應用表單布局
        self.setLayout(formLayout)

def main(self):
    app = QApplication(sys.argv)
    main = self()
    main.show()
    exit(app.exec_())

if __name__ == "__main__":
    main(testLinEdit_002)
    

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM