2
我有一个QLineEdit,我用它来获得双倍。但是有没有更合适的方法来获得它?这是我的代码。替代QLineEdit获得双倍
ui->lineEdit->setValidator(new QIntValidator(this));
QString XMAX=ui->lineEdit->text();
double xmax=XMAX.toDouble();
我有一个QLineEdit,我用它来获得双倍。但是有没有更合适的方法来获得它?这是我的代码。替代QLineEdit获得双倍
ui->lineEdit->setValidator(new QIntValidator(this));
QString XMAX=ui->lineEdit->text();
double xmax=XMAX.toDouble();
输入双精度的规范方式当然是使用QDoubleSpinBox。
如果您坚持使用QLineEdit
,则应该将其与QDoubleValidator
一起使用,而不是QIntValidator
。我只想补充完整性检查的东西已进入编辑字段:
double xmax;
if (ui->lineEdit->text()->isEmpty())
xmax = numeric_limits<double>::quiet_NaN();
else
xmax = ui->lineEdit->text().toDouble();
使用QDoubleSpinBox我必须有向上和向下箭头,这是我不想。 – SamuelNLP
@SamuelNLP:好的,然后坚持行编辑。只需使用正确的验证程序并检查行编辑是否为空。 – Mehrwolf
@SamuelNLP摆脱箭头,你可以简单地使用'QDoubleSpinBox'的方法'setButtonSymbols(QAbstractSpinBox :: NoButtons)' – Pankrates