QLocale在安装了语言包的Windows上检测不正确的系统语言

Vio*_*ffe 3 windows qt localization internationalization qlocale

我试图用以下方法检测当前的系统语言QLocale:

QLocale::Language sysLangId = QLocale::system().language();
Run Code Online (Sandbox Code Playgroud)

但是,它无法正常工作.我使用的是应用了英语语言包的俄语Windows 7,但是language()返回俄语而不是英语.有没有解决方法?

phy*_*att 5

当我在Qt中进行本地化时,我使用了

QString locale = QLocale::system().name();
Run Code Online (Sandbox Code Playgroud)

当我测试获取区域设置时,我发现它依赖于区域和语言设置中的格式:

控制面板>区域和语言>格式

Windows区域和语言格式设置(德语)

希望有所帮助.