QlineEdit的过滤器设置

来源:互联网 发布:三阶魔方淘宝 编辑:程序博客网 时间:2024/06/16 11:07

直接使用QRegExp/QValidator,通过setValidator设置

QRegExp     regMaxPower("^(\\d{1,6})|((\\d{1,6})\.\\d{1,5})$");//最大动能       QRegExp     regWeight("^(\\d{1,3})(\.\\d{1,4})$");//重量       QRegExp     regSpeed("^(\\d{1,5})(\.\\d{1,5})$");//速度       QRegExp     regAirvolume("^(\\d{1,5})(.\\d{1,5})$");//充气体积       QRegExp     regMileage("^(\\d{1,5})(.\\d{1,5})$");  //续航里程       QValidator *validatorMaxPower=new QRegExpValidator(regMaxPower, ui.editMaxPower);       ui.editMaxPower->setValidator(validatorMaxPower);       QValidator *validatorWeight=new QRegExpValidator(regWeight, ui.editMaxPower);       ui.editEmptyWeight->setValidator(validatorWeight);       ui.editMaxWeight->setValidator(validatorWeight);       QValidator *validatorSpeed=new QRegExpValidator(regSpeed, ui.editMaxPower);       ui.editMaxspeedLevel->setValidator(validatorSpeed);       ui.editMaxspeedRaise->setValidator(validatorSpeed);       QValidator *validatorAirvolume=new QRegExpValidator(regAirvolume, ui.editMaxPower);       ui.editAirvolume->setValidator(validatorAirvolume);       QValidator *validatorMileage=new QRegExpValidator(regMileage, ui.editMaxPower);       ui.editMileage->setValidator(validatorMileage);

结果:效果不好

   QRegExp     regMaxPower("^([0]|[1-9][0-9]{0,4})(\\.\\d{1,4})?$");;//最大动能   QRegExp     regWeight("^([0]|[1-9][0-9]{0,1})(\\.\\d{1,3})?$");;//重量   QRegExp     regSpeed("^([0]|[1-9][0-9]{0,3})(\\.\\d{1,3})?$");;//速度   QRegExp     regAirvolume("^([0]|[1-9][0-9]{0,4})(\\.\\d{1,3})?$");;//充气体积   QRegExp     regMileage("^([0]|[1-9][0-9]{0,4})(\\.\\d{1,4})?$");;  //续航里程   QValidator *validatorMaxPower=new QRegExpValidator(regMaxPower, ui.editMaxPower);   ui.editMaxPower->setValidator(validatorMaxPower);   QValidator *validatorWeight=new QRegExpValidator(regWeight, ui.editMaxPower);   ui.editEmptyWeight->setValidator(validatorWeight);   ui.editMaxWeight->setValidator(validatorWeight);   QValidator *validatorSpeed=new QRegExpValidator(regSpeed, ui.editMaxPower);   ui.editMaxspeedLevel->setValidator(validatorSpeed);   ui.editMaxspeedRaise->setValidator(validatorSpeed);   QValidator *validatorAirvolume=new QRegExpValidator(regAirvolume, ui.editMaxPower);   ui.editAirvolume->setValidator(validatorAirvolume);   QValidator *validatorMileage=new QRegExpValidator(regMileage, ui.editMaxPower);   ui.editMileage->setValidator(validatorMileage);

效果可以

原创粉丝点击