QLineEdit只能输入中文,数字,英文

1.设置信息提示(背景文本)

ui->lineEdit_01_01->setPlaceholderText("请输入中文");

2.设置不可编辑

ui->lineEdit_01_01->setFocusPolicy(Qt::NoFocus);

3.输入限制设置

3.1验证器
3.1.1只许输入中文

ui->lineEdit_01_01->setValidator(new QRegExpValidator(QRegExp("[\u4e00-\u9fa5]+$")));

3.1.2只许输入整数

ui->lineEdit_01_04->setValidator(new QIntValidator(ui->lineEdit_01_04));

3.1.3只许输入字母

ui->lineEdit_01_04->setValidator(new QRegExpValidator(QRegExp("^[A-Za-z]+$")));   

3.1.4只许输入大写字母

ui->lineEdit_01_04->setValidator(new QRegExpValidator(QRegExp("^[A-Z]+$")));   

3.1.5只许输入小写字母

ui->lineEdit_01_04->setValidator(new QRegExpValidator(QRegExp("^[a-z]+$")));   

3.1.6只许输入数字

ui->lineEdit_01_04->setValidator(new QRegExpValidator(QRegExp("[0-9]+$")));   

3.1.7只许输入字母和数字

ui->lineEdit_01_04->setValidator(new QRegExpValidator(QRegExp("[a-zA-Z0-9]+$")));   

3.1.8只许输入浮点型数据

非负浮点数(正浮点数 + 0):"^\d+(\.\d+)?$"
正浮点数:"^(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$"
非正浮点数(负浮点数 + 0):"^((-\d+(\.\d+)?)|(0+(\.0+)?))$"
负浮点数:"^(-(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*)))$" 
浮点数:"^(-?\d+)(\.\d+)?$"

3.1.9输入时间格式(年月日格式)

ui->lineEdit_01_04->setValidator(new QRegExpValidator(QRegExp("^(d{2}|d{4})-((0([1-9]{1}))|(1[1|2]))-(([0-2]([1-9]{1}))|(3[0|1]))$")));  

3.1.10输入时间格式(月-日-年)

ui->lineEdit_01_04->setValidator(new QRegExpValidator(QRegExp("^((0([1-9]{1}))|(1[1|2]))/(([0-2]([1-9]{1}))|(3[0|1]))/(d{2}|d{4})$" )));  

3.2setInputMask输入IP、MAC地址、日期、License号。
3.2.1输入IP格式

ui->lineEdit_01_04->setInputMask("000.000.000.000;_");

3.2.2输入MAC地址格式

ui->lineEdit_01_04->setInputMask("HH:HH:HH:HH:HH:HH;_");

3.2.3输入时间格式

ui->lineEdit_01_04->setInputMask("0000-00-00");

3.2.4输入License号格式

ui->lineEdit_01_04->setInputMask(">AAAAA-AAAAA-AAAAA-AAAAA-AAAAA;#");

你可能感兴趣的:(qt,开发语言)