翻译文件的加载主要有两部分,一个是自己的,另外一个是qt自带的,可以在qt的安装目录下找到!(qt_zh_CN.qm)
一般情况下,我们会把翻译文件都放在一个固定的目录下,下面分享一个接口,指定目录下遍历加载翻译文件!
//加载翻译文件
bool setTranslator(const QString strPath)
{bool bRet = false;if (strPath.isEmpty() || !QFile::exists(strPath)){return bRet;}QTranslator * pTrans = new QTranslator();if (pTrans->load(strPath)){QApplication::installTranslator(pTrans);bRet = true;}else{delete pTrans;pTrans = NULL;}return bRet;
}
void searchQmFile(const QString & strPath)
{QDir dir(strPath);if (!dir.exists()){return;}dir.setFilter(QDir::Dirs | QDir::Files | QDir::NoDotAndDotDot);dir.setSorting(QDir::DirsFirst);   // 文件夹优先// 转换成一个ListQFileInfoList list = dir.entryInfoList();if (list.size() < 1){return;}int i = 0;do{QFileInfo fileInfo = list.at(i);QString tt = fileInfo.fileName();// 如果是文件夹bool bisDir = fileInfo.isDir();if (bisDir){searchQmFile(fileInfo.filePath());}else{bool bQm = fileInfo.fileName().endsWith(".qm");setTranslator(fileInfo.filePath());}i++;} while (i < list.size());
}
/将当前目录设置为程序的所在目录
QDir::setCurrent(a.applicationDirPath());
QString strLanPath = QObject::tr("%1\\Language_zh").arg(QDir::currentPath());
strLanPath = QDir::toNativeSeparators(strLanPath);
//读取翻译文件
searchQmFile(strLanPath);

Qt 翻译文件的加载相关推荐

  1. QT多国语言加载qm文件不起效果问题总结

    请确保qm的文件路径正确,该文件程序一定能找得到. 当有多个qm文件时,后加载的可能会覆盖掉前期加载的,请检查是不是后加载的qm导致多国语言失败. 请检查QTranslator对象在窗口.程序生存期内 ...

  2. fread读取整个文件_qt如何实现大文件的加载和显示

    最近研究了下如何用qt的原生控件来加载和显示大文件(>1G),分享下一些摸索经验. 下文源码: compilelife/loginsight​github.com 文件的内存映射 在开始qt部分 ...

  3. html显示hdf5文件,图片转换成HDF5文件(加载,保存)

    翻译http://machinelearninguru.com/deep_learning/data_preparation/hdf5/hdf5.html 当我们谈论深度学习时,通常首先想到的是大量数 ...

  4. Cesium源码解析一(terrain文件的加载、解析与渲染全过程梳理)

    快速导航(持续更新中-) Cesium源码解析一(terrain文件的加载.解析与渲染全过程梳理) Cesium源码解析二(metadataAvailability的含义) Cesium源码解析三(m ...

  5. Pandas将dataframe保存为pickle文件并加载保存后的pickle文件查看dataframe数据实战

    Pandas将dataframe保存为pickle文件并加载保存后的pickle文件查看dataframe数据实战 目录 Pandas将dataframe保存为pickle文件并加载保存后的pickl ...

  6. django-2 模板文件的加载

    django-2  模板文件的加载 1.创建模板文件 index.html 2.在django使用模板文件  需要在app下创建templates文件夹   此为django固定模板文件位置 3.编辑 ...

  7. centos uwsgi配置_centos下配置nginx+uwsgi运行py以及静态文件的加载

    其实不限于centos,个人觉得所有的linux都一样,就好像你喜欢把钱放在左边的口袋,我喜欢把钱放右边的口袋,还有的人喜欢把钱放里面的口袋,无非是配置文件的地方不一样 首先安装nginx,嗯,这个自 ...

  8. Django 1.11 bootstrap样式文件无法加载问题解决

    Django 1.11 bootstrap样式文件无法加载问题解决 参考文章: (1)Django 1.11 bootstrap样式文件无法加载问题解决 (2)https://www.cnblogs. ...

  9. ELF文件的加载和动态链接过程

    本文的目的:大家对于Hello World程序应该非常熟悉,随便使用哪一种语言,即使还不熟悉的语言,写出一个Hello World程序应该毫不费力,但是如果让大家详细的说明这个程序加载和链接的过程,以 ...

最新文章

  1. Spring Cloud Gateway的全局异常处理
  2. 谷歌开始用AI技术帮助数据中心散热节省成本
  3. boost::container模块实现内存资源记录器的程序
  4. 69 SD配置-发票凭证配置-为回扣处理选择出具发票单据
  5. ExtJs2.0学习系列(7)--Ext.FormPanel之第四式(其他组件示例篇)
  6. jQuery学习之三---工具
  7. 【python】Python的基本数据类型之数字类型与字符串类型
  8. vue.js--遇到的一些错误
  9. 视觉惯性SLAM问题汇总
  10. 【JSP】错误页面处理
  11. 网络冗余备份之VRRP技术备份网关(上)
  12. 小米手机miui12系统下拉状态栏开关图标排序方法
  13. 迷你商城后端管理系统 ———— stage2 项目的核心代码实现
  14. 【题解】Priest John's Busiest Day POJ - 3683 ⭐⭐⭐ 【2-SAT 拓扑序】
  15. mac+微信打开连接到服务器,MAC OS系统 ,微信接收到的文件,打开wo… - Apple 社区...
  16. LaTex将BibTex转换成bibitem
  17. mysql rand_mysql的rand函数
  18. 圣诞节,深圳街头有点冷清了~
  19. 如何将Nginx的版本号隐藏
  20. 数值计算高斯求积分的解法

热门文章

  1. 18春学期《计算机应用基础》,18春学期(1709、1803)《计算机应用基础》在线作业及答案.pdf...
  2. 两个datatable合并 主键一样覆盖_MySQL 建表为啥还设置个自增 id ?用流水号当主键不正好么?...
  3. 嵌入式开发板01---点亮LED
  4. 被引10万次:21世纪高被引论文Top 10
  5. Python打包exe后报错:Failed to execute script xxxx问题的解决办法
  6. 增值电信业务许可,经营性icp证书自助申请教程【详细】
  7. springboot使用mybatis_使用springboot+mybatis数据库存储服务化
  8. python后端和爬虫_10分钟教你Python爬虫(上)-- HTML和爬虫基础
  9. vue 小地图放大缩小_实景3D卫星地图
  10. Qt文档阅读笔记-QPointer的概念及实例(并发多线程实例)