使用掩码限制QLineEdit的输入

|

A ASCII字母字符是必须输入的(A-Z、a-z)
a ASCII字母字符是允许输入的,但不是必须的(A-Z、a-z)
N ASCII字母字符是允许输入的(A-Z、a-z、0-9)
n ASCII字母字符是允许输入的,但不是必须的(A-Z、a-z、0-9
X 任何字符都是必须输入的
x 任何字符都是允许输入的,但不是必须的
9 ASCII数字字符是必须输入的(0-9)
0 ASCII数字字符是允许输入的,但不是必须的(0-9)
D ASCII数字字符是必须输入的(1-9)
d ASCII数字字符是允许输入的,但不是必须的(1-9)
# ASCII数字字符或加减符号是允许输入的,但不是必需的
H 十六进制格式字符是必须输入的(A-F、a-f、0-9)
h 十六进制格式字符是允许输入的,但不是必需的(A-F、a-f、0-9)
B 二进制格式字符是必须输入的(0,1)
b 二进制格式字符是允许输入的,但不是必需的(0,1)
> 所有的字母字符都大写
< 所有的字母字符都小写
! 关闭大小写转换
\ 使用“\”转义上面列出的字符
在使用掩码限制QLineEdit的输入时,我们需要用到一个函数:setInputMask(self, p_str):
import sys

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

class QLineEditMask(QWidget):
    def __init__(self):
        super(QLineEditMask, self).__init__()
        self.initUI()

    def initUI(self):
        self.setWindowTitle("掩码限制QLineEdit的输入")
        formLayout = QFormLayout()
        ipLineEdit = QLineEdit()
        macLineEdit = QLineEdit()
        dataLineEdit = QLineEdit()
        licenseLineEdit = QLineEdit()

        # 分号是指当没有输入时默认显示后面的字符
        ipLineEdit.setInputMask('000.000.000.000; _')
        macLineEdit.setInputMask('HH:HH:HH:HH:HH; _')
        dataLineEdit.setInputMask('0000-00-00')
        licenseLineEdit.setInputMask('>AAAAA-AAAAA-AAAAA-AAAAA; #')

        formLayout.addRow("数字掩码", ipLineEdit)
        formLayout.addRow("Mac掩码", macLineEdit)
        formLayout.addRow("日期掩码", dataLineEdit)
        formLayout.addRow("许可证掩码", licenseLineEdit)

        self.setLayout(formLayout)




if __name__ == "__main__":
    app = QApplication(sys.argv)
    main = QLineEditMask()
    main.show()
    sys.exit(app.exec_())
使用掩码限制QLineEdit的输入使用掩码限制QLineEdit的输入 qq_45690024 发布了16 篇原创文章 · 获赞 7 · 访问量 559 私信 关注
上一篇:PyQt5基础控件


下一篇:c – Qt设置QLineEdit的背景颜色