1、获取系统支持的语言
 QStringList uiLanguages;uiLanguages = QLocale::system().uiLanguages();
2、从设置中获取想要显示的语言,尝试覆盖默认的
    QString overrideLanguage = settings->value(QLatin1String("General/OverrideLanguage")).toString();if (!overrideLanguage.isEmpty())//将想要设置的语言插入字符链表的最开始,以便优先设置uiLanguages.prepend(overrideLanguage);
3、获取保存翻译的文件路径:

如QtCreator程序中翻译:~/Qt5.6.3/Tools/QtCreator/share/qtcreator/translations

 const QString &creatorTrPath = QCoreApplication::applicationDirPath() + QLatin1String(SHARE_PATH) + QLatin1String("/translations");
4、循环加载
 foreach (QString locale, uiLanguages) {//该步骤的功能:如果locale不合法,尝试返回最近的或默认的locale = QLocale(locale).name();
5、如果加载成功,

【Qt】通过QtCreator源码学习Qt(十):多国语言支持相关推荐

  1. 【Qt】通过QtCreator源码学习Qt(十二):Q_D和Q_Q指针(简称“d指针”)详解

    1.Q_D和Q_Q指针(简称"d指针")简介 参考博客: https://www.devbean.net/2016/11/qt-creator-source-study-07/ h ...

  2. 【Qt】通过QtCreator源码学习Qt(一):pro文件

    1.学习目的 学习pro文件的语法规则,这在跨平台项目中会经常用到.和条件编译相似,在pro中可以根据平台选择不同的编译模块.文件,还可以向源码中传递变量等. 2.学习方法 通过学习QtCreator ...

  3. 【Qt】通过QtCreator源码学习Qt(五):QLoggingCategory管理、分类、过滤打印信息

    1.QLoggingCategory简介 在QtCreator源码中新学到一个类QLoggingCategory. QLoggingCategory可以控制打印输出类别和区域.方便在调试时,过滤掉不关 ...

  4. 【Qt】通过QtCreator源码学习Qt(二):跨平台编程

    1.Qt对当前平台的判断 在qsystemdetection.h中根据宏定义来判断当前的操作系统,常用的操作系统如下: Q_OS_WIN.Q_OS_LINUX.Q_OS_MAC.Q_OS_UNIX q ...

  5. 【Qt】通过QtCreator源码学习Qt(十一):Utils::Icon,根据不同主题、不同状态变换图标

    1.简介 在QtCreator中Utils::Icon封装的图标可以根据主题变换,还可以设置不同状态下的图标的颜色.不同状态下的颜色变换,由QIcon::addPixmap函数实现: void QIc ...

  6. 【Qt】通过QtCreator源码学习Qt(九):容器算法总结

    一.简介 本节总结QtCreator中封装的容器算法接口,源码文件的路径src/libs/utils/algorithm.h. 算法接口包括:判断.查找.删除.统计.排序.转换.拆分.过滤 二.算法源 ...

  7. 【Qt】通过QtCreator源码学习Qt(三):linux平台的信号、程序崩溃处理

    崩溃处理设置:CrashHandlerSetup 1.原理 在堆中为信号处理函数分配一块区域,作为该函数的栈使用,当系统默认的栈空间用尽时,调用信号处理函数使用的栈是在堆中分配的空间,而不是系统默认的 ...

  8. 【Qt】通过QtCreator源码学习Qt(四):插件管理PluginManager

    1.简介 QtCreator使用插件架构,方便扩展.它的核心是插件管理,主类是PluginManager. 下面是翻译src\libs\extensionsystem\pluginmanager.cp ...

  9. 【Qt】通过QtCreator源码学习Qt(八):插件生命周期及对应状态(代码走读)

    1.简介 PluginManager管理插件IPlugin的生命周期,从初始化插件到删除插件共八个状态.插件状态表--PluginSpec::enum State { Invalid, Read, R ...

最新文章

  1. easyui的datagrid
  2. Expo大作战(三十六)--expo sdk api之 ImagePicker,ImageManipulator,Camera
  3. 2018阿里云云数据库RDS核心能力演进
  4. 北京卫生中级英语计算机考试成绩查询,2019年北京卫生专业技术资格成绩查询时间及入口...
  5. 老毛桃安装WIN7原版系统
  6. Android shell命令查询ip,网关,DNS
  7. 基于大数据平台的毕业设计
  8. 2022百度之星程序设计大赛 - 初赛 - 第二场 1001 和
  9. 清华大数据,365天我们持续在发声——数据院四周年系列报道之传播篇
  10. 名单出炉!下一轮“双一流”,重点建设这些高校!
  11. 总结安卓应用市场App首发活动规则
  12. 一文教你如何在Linux系统上搭建samba文件共享服务器
  13. 合并数组相同key php,php将两个数组相同的key合并到一个数组
  14. linux红帽修改默认字体大小,为 Redhat Linux 添加新字体
  15. 西门子SMART200程序 PID的控制写法,突破8路
  16. 有序关系中的上界+上确界+下界+下确界
  17. 个人ACM模板(待持续补充)
  18. 一些有关银行的英文单词的积累
  19. html调用wrl,html 的 ContentType 小结
  20. 百度地图 添加行政区域

热门文章

  1. 【Python】函数图像绘制:二维图像、三维图像、散点图、心形图
  2. 在PHP中给表格加上css样式,表格CSS样式设置 给table表格设置CSS样式表
  3. 深度学习——数据预处理篇
  4. 基于成像激光雷达的鲁棒位置识别
  5. 基于Windows配置COLMAP环境
  6. 傅里叶频域,复数域,冲激函数,香农采样(不介绍公式-只介绍是啥)另一种思维
  7. 终极AutoCAD大师班:成为AutoCAD专家
  8. SketchUp Pro 2021基础入门学习视频教程
  9. 连续地址数据(数组或者malloc的内存)作为函数参数
  10. Linux目录读写和可执行权限