qt - 替代 QLineEdit 以获得双倍

标签 qt qlineedit

我有一个 QLineEdit,我用它来获得双倍。但是有没有更合适的获取方式呢?这是我的代码。

ui->lineEdit->setValidator(new QIntValidator(this));

QString XMAX=ui->lineEdit->text();
double xmax=XMAX.toDouble();

最佳答案

输入 double 的规范方法当然是使用 QDoubleSpinBox .

如果您坚持使用QLineEdit,您应该将它与QDoubleValidator 一起使用,而不是您的QIntValidator。我只想添加一个健全性检查,以确保某些内容已输入到编辑字段中:

double xmax;
if (ui->lineEdit->text()->isEmpty())
    xmax = numeric_limits<double>::quiet_NaN();
else
    xmax = ui->lineEdit->text().toDouble();

关于qt - 替代 QLineEdit 以获得双倍,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12246953/

相关文章:

c++ - Q_UNUSED 相对于省略参数名称有什么好处?

android - Qt 创建者 : create an APK compatible with multiple ABIs?

c++ - 当我尝试将一个信号连接到插槽时,Qt 代码无法编译

c++ - 将图像保存到 Qt 中动态创建的目录中

c++ - C++中的netcat命令

c++ - 为什么 MSVC 在覆盖具有正确签名的函数时会产生 C3668 错误?

qt - 在焦点上选择 QLineEdit 的文本

c++ - qt改变QLineEdit形状

python - PyQt 自动调整 qlineedit 字符间距

c++ - QLineEdit 处于焦点时无法设置快捷方式