vit*_*ida 2 c++ qt operating-system
我想检测安装在我的操作系统上的语言。为此,我跑了:
qDebug() << QLocale::system();
// result = QLocale(English, Latin, UnitedStates)
Run Code Online (Sandbox Code Playgroud)
但我想将它保存在 QString 中,但不可能这样做:
QString langs = QLocale::system().toString();
Run Code Online (Sandbox Code Playgroud)
如何将此结果保存在字符串中?或者有没有更好的方法来检测操作系统语言?另一件事,是否可以检测键盘语言设置(如果可能,使用 Qt)?
QLocale 支持默认语言环境的概念,该概念由应用程序启动时系统的语言环境设置确定
因此,要获得系统默认语言的不同表示,QLocale 上的以下一种或多种方法可能会对您有所帮助:
qDebug() << QLocale::system().name();
qDebug() << QLocale::system().nativeCountryName();
qDebug() << QLocale::system().nativeLanguageName();
Run Code Online (Sandbox Code Playgroud)
示例输出:
"en_GB"
"United Kingdom"
"British English"
Run Code Online (Sandbox Code Playgroud)
在 GUI 应用程序中,您可以获得输入法的类似详细信息,如下所示:
qDebug() << QGuiApplication::inputMethod()->locale().name();
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
1161 次 |
最近记录: |