PyQT5 - 010 - 掩码控制输入控件(QLineEdit)的输入

说明

在实际应用中,常常需要在界面上控制或限制用户的输入行为,以此来简化数据的处理。在 QT中,我们可以利用输入掩码来达到这种效果,例如 IP 地址、MAC地址的输入。

基本属性
掩码字符说明
AASCII字母字符(A-Z、a-z) 是必须输入的
aASCII字母字符(A-Z、a-z) 是允许输入的,但不是必需输入的
NASCII字母字符(A-Z、a-z、0-9)是必须输入的
nASCII字母字符(A-Z、a-z、0-9)是允许输入的,但不是必需输入的
X任何字符都是必须输入的
x任何字符都是允许输入的,但不是必需输入的
9ASCII数字字符(0-9)是必须输入的
0ASCII数字字符(0-9)是允许输入的,但不是必需输入的
DASCII数字字符(1-9)是必须输入的
dASCII数字字符(1-9)是允许输入的,但不是必需输入的
#ASCI数字字符或加减符号是允许输入的,但不是必需输入的
H十六进制格式字符(A-F、a-f、0-9) 是必须输入的
h十六进制格式字符(A-F、a-f、0-9) 是允许输入的,但不是必需输入的
B二进制格式字符(0,1)是必须输入的
b二进制格式字符(0,1)是允许输入的,但不是必需输入的
>所有的字母字符都大写
<所有的字母字符都小写
!关闭大小写转换
**使用""转义上面列出的字符
测试Demo
from PyQt5.QtWidgets import QApplication, QWidget, QFormLayout, QLineEdit
import sys

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

    def initUI(self):
        self.setWindowTitle('使用掩码限制QLineEdit控件的输入')
        self.resize(500, 150)

        formLayout = QFormLayout()  # 表单布局

        ipLineEdit = QLineEdit()  # ip输入框
        macLineEdit = QLineEdit()  # mac地址输入框
        dateLineEdit = QLineEdit()  # 日期输入框
        licenseLineEdit = QLineEdit()  # 许可恒输入框

        # 设置输入数据格式, 以"_"占位, ASCII数字字符是允许输入的,但不是必需的(0-9)
        ipLineEdit.setInputMask('000.000.000.000;_')

        # 设置输入数据格式, 以"_"占位, 十六进制格式字符是必须输入的(A-F、a-f、0-9)
        macLineEdit.setInputMask('HH:HH:HH:HH:HH:HH;_')

        # 设置输入数据格式, 例如: 2019-12-12
        dateLineEdit.setInputMask('0000-00-00')

        # 设置输入数据格式, 以"#"占位, ">"表示所有的字母字符都大写
        licenseLineEdit.setInputMask('>AAAAA-AAAAA-AAAAA-AAAAA-AAAAA;#')

        # 控件添加到表单布局,
        formLayout.addRow('数字掩码', ipLineEdit)
        formLayout.addRow('Mac掩码', macLineEdit)
        formLayout.addRow('日期掩码', dateLineEdit)
        formLayout.addRow('许可证掩码', licenseLineEdit)

        self.setLayout(formLayout)


if __name__ == '__main__':
    app = QApplication(sys.argv)
    main = QLineEditMaskDemo()
    main.show()
    sys.exit(app.exec_())
运行效果

在这里插入图片描述

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值