【发布时间】:2014-12-26 11:01:34
【问题描述】:
我将QDoubleValidator 用于我的QLineEdit。应用程序语言环境(在 QtCreator 中设置)是QLocale::German。
现在,当我输入一个有效的双精度(使用点或逗号作为小数分隔符)写入 textedit 以及将字符串转换为浮点数时,效果非常好。但是验证器还允许我编写带有多个小数分隔符的内容。 123.567,890 或 ,,03.4... 之类的字符串得到验证,但无法转换为浮点数。
有没有办法告诉QDoubleValidator 只验证真实数字,而不仅仅是不带字母字符的字符串?
我基本上想要一个验证器,它只验证字符串,可以转换为浮点数 使用默认语言环境或德语语言环境。
【问题讨论】:
-
你为什么不使用
QDoubleSpinBox?它会自动使用系统语言环境,如果你不想看到它们,你可以hide the up/down buttons。
标签: c++ qt qt5 qlineedit qvalidator