【问题标题】:Qt decimal separatorQt 小数分隔符
【发布时间】:2016-07-12 12:32:55
【问题描述】:

在许多(全部?)Qt gui 控件(如 QDoubleSpinBox)、QDoubleValidator 等 ',' 中用作小数分隔符。但是QString方法toFloat,toDouble使用'.'。为所有平台和本地人解决此冲突的最佳方法是什么?

【问题讨论】:

    标签: qt qt5.5


    【解决方案1】:

    Qt 使用系统语言环境来显示小部件中的数字,有时会有“,”作为小数分隔符。您可以使用QLocale::system().toDouble() 来获得依赖于语言环境的转换。

    【讨论】:

    • 同时写的:)。 “QLocale::system()。”相当于“QLocale()”?
    • @Bleach 根据文档:“QLocale::QLocale()。构造一个使用默认语言环境初始化的 QLocale 对象。如果没有使用 setDefault() 设置默认语言环境,则此语言环境将是相同的作为 system() 返回的那个"
    【解决方案2】:

    问题已解决。我使用 QLocale().toFloat() 安装 QString::toFloat()。

    【讨论】:

      猜你喜欢
      • 2016-03-22
      • 2016-12-08
      • 2011-04-21
      • 2013-11-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多