问题标签 [qlocale]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
804 浏览

qt - Qml Locale 对于 ShortFormat 和 NarrowFormat 具有相同的格式

我正在尝试使用在 Qml 中的 Date 类型上实现的 toLocaleDateString / toLocateTimeString 方法显示日期(和时间)(此处的文档)。它可以工作,除了与 NarrowFormat 相同的 ShortFormat。

这是一个例子:

显示的内容:

我期待 ShotFormat 给我的日期是 2017 年 9 月 27 日或类似的日期,时间是上午 11:46:42。

我在文档(here)中找到了关于 NarrowFormat 的内容,即

此外,对于系统语言环境,此格式与 ShortFormat 相同。

我不确定这是否与我的问题有关,因为我在 toLocaleDateMethod 中明确给出了语言环境。即使那样,NarrowFormat 应该更详细,而不是 ShortFormat 更短......

谢谢你的帮助 !

0 投票
1 回答
1648 浏览

c++ - 如何显示与系统不同区域设置的 QDate-month?

该功能QDate::toString(const QString &format)允许显示月份名称MMM(例如“Jan”到“Dec”)或MMMM(例如“January”到“December”)。

但是这个函数使用来自QLocale::system()源代码)的系统语言环境。

QDate对于特定的 QLocale ,显示带有月份名称的最简单方法是什么?

0 投票
0 回答
591 浏览

c++ - 如何在 QLocale 中将特定字符设置为组分隔符?

Qt 中的每个语言环境都有不同的符号用作组分隔符(例如 ','、'.' 或 0xa0)。

Qt 应用程序是否有可能以某种方式使用当前语言环境的所有设置并覆盖用作组分隔符的字符?所以它会被验证器和“toString”方法的所有默认实现自动使用。

PS:当前语言环境是指由 QLocale::system() 获得的语言环境,并由 QLocale::setDefault(locale) 替换

编辑重复建议:我不仅需要替换组和小数分隔符以进行双->字符串转换,还需要向后替换。因此用户可以使用建议的符号在不同的编辑小部件中输入双精度值,默认 Qt 实现将接受它(例如 Q*Validator 和 QDoubleSpinBox 使用系统语言环境来验证输入,如果会有非默认字符 - 输入将被拒绝) .

0 投票
1 回答
285 浏览

qt - QLocale::formattedDataSize 函数有没有办法返回翻译量化单位?

QLocale::formattedDataSize 总是返回英文量化单位。

0 投票
1 回答
268 浏览

qt - 如何从 QLocale 获取语言的“长”名称?

我创建了一个QComboBox列出 Qt 应用程序支持的各种语言的列表。为了填充组合框中的项目,我在所有.qm文件中搜索可用的语言代码。

然后我通过QLocale从语言代码构造 a 来获取语言名称。

问题是我有同名的语言zh_CNzh_TW显示为中文,en_USen_UK显示为英文。

我的问题是:是否有一种简单、不易碎的方法来获得这些语言的“长”名称?例如,如果存在,我想要类似以下的内容:

0 投票
2 回答
444 浏览

qt - QLocale 获取真实语言名称

我有一个像 fr_fr、fr_be 这样的语言代码。我想使用 QLocale 获得法语和比利时,但我找不到如何做到这一点。我做了:

0 投票
1 回答
74 浏览

qt - 我如何使用 QLocale 将波斯数字转换为英文数字?

我想使用 将波斯数字转换为英文数字QLocale,​​我写了这段代码,但它失败了:

控制台输出:

但是可以将英文数字转换为波斯数字:

控制台输出:

我哪里做错了 ?

  • 数量: 5.14.1
  • 操作系统: Archlinux-5.6.7-arch1-1
  • 编译器: GCC 9.3
0 投票
0 回答
124 浏览

c++ - 为什么 QDialogBu​​ttonBox 标签的语言在设计和执行之间会发生变化?

我使用法语版本的 QtCreator v4.11.1 当我使用表单设计器(或使用 Qt 设计器)创建默认 QDialogBu​​ttonBox 时,按钮以法语标记。两个按钮都有“OK”和“Annuler”标签,如下所示。

在此处输入图像描述

但是,当我执行应用程序时,标签会更改为英文,并标记为“OK”和“Cancel”,如下所示。

在此处输入图像描述

我试图搜索,但找不到保留标签设计的方法(这意味着在法语中)。即使在使用代码显式设置 QLocale 之后,执行应用程序时标签始终为英文。

这是 QT 的问题还是我错过了一些步骤?编译时如何将标签保留为法语?