Qt中QLineEdit如果想设置整数,可以使用QIntValidtor;例如ui.k1Edit->setValidtor(new QIntValidtor(10,100,this));
但不支持输入浮点型输入,需要使用QRegExp正则表达式。
需要注意的是,需要将setText函数放置在setValidtor之前;否则会导致编辑框可输入非数字字符。
//需要将setText函数放置在setValidtor之前
ui.k1Edit->setText("-0.0086782343");
//-1.0000000000-1.0000000000
QRegExp regx("(^-?1$)|(^-?[0]\\.([0-9]{0,10})$)");
QRegExpValidtor *pReg = new QRegExpValidtor(regx, this);
ui.k1Edit->setValidtor(pReg);