我用Qt QInputDialog::getDouble()
输入十进制数。由于某些原因,默认情况下输出而不是点,尽管在教程中显示的是逗号。
您能告诉我它是什么吗,或者新版本只能使用逗号吗?点拒绝键盘
double test = QInputDialog::getDouble(this, "Error!", "Write from 0 to 1!", 0.0, -2147483647, 2147483647, 3, &ok );
最佳答案
这取决于当前系统的QLocale
设置。如果您使用QInputDialog
实例而不是静态方法,则可以自己设置QLocale
设置(无需更改整个应用程序的值)。
例如:
QInputDialog* dialog = new QInputDialog();
dialog->setInputMode(QInputDialog::DoubleInput);
dialog->setLocale(QLocale(QLocale::English, QLocale::UnitedKingdom)); // Will use a dot
dialog->exec();
qDebug() << dialog->doubleValue();
dialog->setLocale(QLocale(QLocale::French, QLocale::France)); // Will use a comma
dialog->exec();
qDebug() << dialog->doubleValue();
请参阅Qt documentation来配置
QInputDialog
(范围,标题等)关于c++ - QInputDialog为getDouble()显示一个逗号而不是一个点,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/56047436/