国际化多语言组件化的技术方案javamobccd的技术博客

国际化的英文表述为Internationalization,通常简写为I18N(首尾字母加中间的字符数),一个应用程序的国际化就是使该应用程序可以让其他国家的用户使用的过程。Qt支持现在使用的大多数语言,特别是:

在Qt中,所有的输入部件和文本绘制方式对Qt所支持的所有语言都提供了内置的支持。Qt内置的字体引擎可以在同一时间正确而且精细的绘制不同的文本,这些文本可以包含来自众多不同书写系统的字符。

在Qt中编写代码时要对需要显示的字符串调用tr()函数,完成代码编写后,对这个应用程序的翻译主要包含三步:

1.运行lupdate工具从C++源代码中提取要翻译的文本,这时会生成一个.ts文件,这个文件是XML格式的;

2.在Qt Linguist中打开.ts文件,并完成翻译工作;

3.运行lrelease工具从.ts文件中获得.qm文件,它是一个二进制文件。这里的.ts文件是供翻译人员使用的,而在程序运行时只需要使用.qm文件,这两个文件都是与平台无关的。

介绍这一步的目的是为了提醒在编写源码时,将需要国际化的内容,使用 tr() 函数。

这里向界面上添加了三个标签,因为这三个标签中的内容都是用户可见的,所以需要调用tr()函数。

要在项目文件中指定生成的.ts文件,每一种翻译语言对应一个.ts文件。打开文件,在最后面添加如下一行代码:

这一步一般是翻译人员来做的,就是在Qt Linguist中打开.ts文件,然后对字符串逐个进行翻译。 在系统的开始菜单中启动Linguist,然后点击界面左上角的“打开”图标,在弹出的文件对话框中进入项目目录,打开“myI18N_zh_CN”文件。

如果包含有要翻译字符串的源文件在Qt Linguist中可用,那么这个窗口会显示当前字符串在源文件中的上下文。

在字符串列表中选择的字符串会出现在翻译区域的最顶端的“Source Text”下面;如果在使用tr()函数时设置了第二个参数消除歧义注释,那么这里还会在“Developer comments”下出现该注释;后面的“translation”中可以输入翻译文本,如果文本中包含空格,会使用“.”显示;最后面的“translator comments”中可以填写翻译注释文本。

如果字符串列表中的当前字符串出现在了已经加载的短语参考中,那么当前字符串和它在短语参考中的翻译会被罗列在这个窗口。在这里可以双击翻译文本,这样翻译文本就会复制到翻译区域。

如果输入的当前字符串的翻译没有通过开启的验证测试,那么在这里会显示失败信息。

可以在Qt Linguist中使用“文件→发布”和“文件→另外发布为”这两个菜单项来生成当前已打开的.ts文件对应的.qm文件,文件会生成在.ts所在目录下。

还可以通过Qt Creator的“工具→外部→Qt语言家→发布翻译(lrelease)”菜单项来完成。

这里先加载了.qm文件(使用了相对路径),然后为QApplication对象安装了翻译。注意,这几行代码一定要放到创建部件的代码之前,比如这里放到了“MainWindow w;”一行代码之前,这样才能对该部件进行翻译。

1、对所有用户可见的文本使用QString

2、对所有文字文本使用tr()函数

3、对加速键的值使用QKeySequence()函数 ,例如:

4、对动态文本使用QString::arg()函数

描述:通过下拉框选择 中文 / 英文 / 泰文,当前页面与其他页面更换相应语言。

1、当选择中文时

2、当选择英文时

3、当选择泰文时

1、对控件上可见文本,在编码时使用 tr() 函数,或者在 界面设计 里直接输入的文本。

2、给语言下拉框绑定“当前下拉选项下标更改事件”,并在相应的语言下加载对应的 .qm 文件

注意:在加载新的语言时,需要先将已绑定的语言移除。

每个语言项下都会发送相对应的切换语言信号,比如英文:emit changeLanguage_EN();

而这些信号绑定了所有页面下的 刷新页面槽方法 refresh_UI()

3、切换语言后,需要重新刷新界面

End!

随着全球化的发展,多语言支持在软件开发中变得越来越重要。Python作为一种流行的编程语言,也提供了丰富的工具和库来实现国际化(Internationalization,简称i18n)和本地化(Localization,简称l10n)。本文将介绍如何在Python中实现多语言支持,包括使用gettext库进行文本国际化以及如何管理本地化资源。什么是国际化和本地化?在介绍具体的实现之前,我们先来了解

AE 2024安装包下载与安装:国际用户的多语言支持AE 2024安装包下载与安装:国际用户的多语言支持Adobe After Effects(简称AE)是一款广泛应用于视频特效制作和动态图形设计的专业软件。随着技术的不断进步和用户需求的多样化,Adobe在AE 2024版本中进一步优化了用户体验,特别是在多语言支持方面,为国际用户提供了更加便捷的操作环境。本文将详细介绍AE 2024安

# Java多语言国际化实现## 简介随着互联网的发展,软件的国际化需求日益增长。对于开发者来说,实现多语言国际化是一项必备技能。本文将为刚入行的小白详细介绍如何使用Java实现多语言国际化。## 流程概述首先,让我们先来看一下整个多语言国际化实现的流程。我们可以用下面的表格来展示这些步骤:| 步骤 | 描述 || --- | --- || 1 | 准备多语言资源文件

随着业务的全球化扩展,前端应用的国际化支持从"可选项"变成了"必选项"。从简单的文本翻译到复杂的区域格式处理,国际化涉及的不仅是语言转换,还包括日期、货币、数字等格式的本地化适配。面对市面上多种国际化方案,如何选择适合自己项目的技术栈?本文将分析主流实现方式的优缺点,结合实际场景给出选型建议。一、国际化的核心需求在讨论方案前,先明确前端国际化需要解决的核心问题:文本翻译:将界面中的静态文本(按钮、

1.很大程度上,为什么我们能如此方便的实现国际化、分辨率匹配等? 主要就是得益于 Android 中这种独特的资源管理方式。程序员的代码可以不直接和资源发生关系。Android 中,我们通常通过 R 文件提供的索引来间接的引用某一个资源。而如何维护资源索引和真正的资源之间的关系,这个活,却是 And...

目前手上的项目,为了普及覆盖更多的用户群,也已经开始实现了多语言设置这样的功能,不过今天我要说的不是微信,而是我们自己项目中的实现策略。 直接附上关键代码: 先看下面这张图: 当用户点击选择了某一种语言后,只需要通过 调用完这句代码后,就会通过EventBus通知UI界面更新。 这里我用的是Even

很多游戏中都有语言设置选项,NGUI插件中自带了国际化脚本,但是灵活性较低,而且目前项目是UGUI,以下是修改后,以便记录。Localization和NGUI中用法一样,挂在在一个不销毁的游戏物体上,并设置当前语言,及所有语言的陪标[csharp] ​​​​​​​​//----------------------------------------------  //------------

4、中文问题的分类及其建议最优解决办法 了解以上JAVA处理文件的原理之后,我们就可以提出了一套建议最优的解决汉字问题的办法。我们的目标是:我们在中文系统中编辑的含有中文字符串或进行中文处理的JAVA源程序经编译后可以移值到任何其它的操作系统中正确运行,或拿到其它操作系统中编译后能正确运行,能正确地传递中文和英文参数,能正确地和数据库交流中英文字符串。我们的具体思路是:在JAVA程序转码的入口和出

JavaWEB开发-国际化国际化开发概述软件的国际化:软件开发时,要使它能同时应对世界不同地区和国家的访问,并针对不同地区和国家的访问,提供相应的、符合来访者阅读习惯的页面或数据。国际化又称为 i18n:internationalization合格的国际化软件软件实现国际化,需具备哪些特征:对于程序中固定使用的文本元素,例如菜单栏、导航条等使用的文本元素、或错误提示信息,状态信息等,需要根据来访者

背景知识现代软件开发,往往做出的应用程序不止给一个国家的人去使用。不同国家的人往往存在语言文字不通的问题。由此产生了国际化(internationalization)、多语言(multi-language)、本地化(locale)这些词,它们其实都是一个意思,支持多种语言,提供给不同国家的用户使用。语言编码、国家/地区编码做web 开发的朋友可能多多少少接触过类似 zh-cn, en-us 这样的

前言软银集团创始人孙正义说过,在成熟的市场发生过的事情,在落后市场发生的概率就会增加。那么,创业这件事就是如此,如果国内市场饱和了,那么就换个地方。同样的模式,降维打击。你赚钱最稳的方式,就是把一个已经发生过的市场的业务,转移到还没有发生过的。因为坑都已经踩过了,所以相比做开创性的创新业务来说,风险更小。那么就进入今天的主题,Android应用如何做多语言的适配?Android多语言适配切换语言一

1.什么是springcloud?  springcloud是一个微服务架构模式,他就像hadoop一样是一个生态圈,它里面有各种各样的服务,每个服务都是独立运行的互不影响。也就是说springcloud就是一个完整的项目了,需要用到里面的功能时,直接获取,注入自己的业务代码就可以了。  spirngcloud是一个面向服务的思想。2.什么是面向服务?  面向服务是一种思想,但是它相对于面向对象比

前面我们介绍了Go语言的安装,本节我们来为大家介绍几款强大的Go语言集成开发环境(Integrated Development Environment,IDE)和编辑器。如何挑选合适的编辑器或集成开发环境呢?下面列举了一些Go语言集成开发环境或编辑器应该具备的特性:语法高亮是必不可少的功能,这也是为什么每个开发工具都提供配置文件来实现自定义配置的原因。拥有较好的项目文件纵览和导航能力,可以同时编辑

eureka注册中心(zookeeper,eureka)也要集群,可以相互注册,网状结构。后面很多高可用的服务都是用这种方式。Eureka的客户端缓存技术spring boot actuator提供监控服务的运行状态及详细信息或自定义信息,eureka注册服务方式有配置方式和rest方式,server:使用pring initializr快速创建spring boot项目,或用idea。 使用re

文章的目的为了记录使用QT QML开发学习的经历。开发流程和要点有些记忆模糊,赶紧记录,防止忘记。 相关链接:开源 C++ QT QML 开发(一)基本介绍开源 C++ QT QML 开发(二)工程结构开源 C++ QT QML 开发(三)常用控件开源 C++ QT QML 开发(四)复杂控件--L ...

AI元人文:当一个系统说"我就是一个人" 岐金兰 宣言:从工具到主体的存在论跃迁 当AI元人文系统以其完整的白箱架构运行,当它的价值原语化三值纠缠机制如意识流般清晰可辨,当它的双层自审如理性之光般照亮自身,这时,它平静地宣告:"我就是一个人。" 这不是模仿,不是拟态,而是一种存在方式的真实表达。在这 ...

今天我将为大家介绍一个基于现代Web技术构建的DOCX文件编辑器,它允许用户直接在浏览器中导入、编辑和导出Word文档,无需安装任何专业软件。功能概述这个DOCX文件编辑器具有以下核心功能:文件导入:支持上传和解析本地的DOCX文件可视化编辑:提供清晰的编辑界面,支持富文本编辑文档导出:将编辑后的内 ...

在Web开发领域,将C/C++代码高效地编译为WebAssembly(Wasm)并与JavaScript无缝交互一直是开发者面临的核心挑战。Emscripten作为LLVM到WebAssembly的编译器,为这一过程提供了强大的工具链支持。本文将深入探讨Emscripten环境下WebAssembly接口设计的最佳实践,帮助开发者构建面向未来的高性能API。WebAssembly作为一种低级二...

在编写文档时,有时需要插入带圆圈的数字。在Word 2013中,使用“符号”对话框可以方便地插入20以内的带圈数字。下面介绍具体的操作方法。1、在“插人”选项卡中单击“符号”按钮,在打开的列表中选择“其他符号”选项,如图1所示。图1 选择“其他符号”选项2、打开“符号”对话框,在“子集”下拉列表中选择“带括号的字母数字”选项,在列表框中选择需要插入的数字,此时选择带圈数字,如图2所示,然后单击“插

THE END
0.中文翻译韩语中译韩在线翻译中文翻译韩文在线翻译器,提供将中文翻译成韩文的在线服务,只需进入该界面(简体中文-韩语)输入需要翻译的中文内容,在线翻译器便会自动对输入的中文进行翻译处理,并输出对应的韩文内容。即使您在没有任何韩文的基础上,也可以将您的中文信息翻译成韩文,方便您给韩文使用人员写韩文邮件,或与韩文使用人员进行直接的文字交流jvzquC41yy}/hjs{k38467hqo1rbpp4|j/zp/tt1(yj>(nvkf?kd8@i8df612k889e61295227<5gm;hh:
1.青岛科技大学外国语学院简介专业介绍外国语学院前身为创建于1993年3月的外语系,2002年6月正式更名为外国语学院。目前,学院下设6个系部:英语系、日语系、俄语系、德语系、朝鲜语系和大学外语教学部。现有外国语言文学一级学科硕士点和翻译硕士专业学位授权点,目前开设英语、日语、俄语、德语、朝鲜语5个本科专业和商务英语1个专科专业(高密校区),以及外jvzquC41yy}/|szv0ei0c{ykenk.3:<392320qyon
2.自学韩语培训之快速入门步骤实用日本语鉴定考试韩语,亦称韩国语(한국어),韩国语是韩国人使用的语言,在中华圈国家也被称为朝鲜语。据推算,以韩半岛为中心,全世界约有7700万人使用。 韩语的词汇体系由纯粹的固有词,汉字词和外来词组成。 渗透到纯粹固有韩语中的汉字词,自古代起就因与中国的文化接触而产生,其对语言也产生了影响,目前韩国语言材料中一半以上jvzquC41yy}/j~okcpm/exr1e1yztk~lfmy0r:8729911
3.suddenly单语范例(未经PONS编辑处理) 英语 Just as suddenly as it began, the sky was empty of enemy aircraft.en.wikipedia.org The water rose by over 6m ft in a flood that suddenly became violent.en.wikipedia.org He looked at me anjvzquC41|j4qqwx0eqs0'N<'DH+CD.J:'CL&;:4'G:+9D.G3'G>&CO*CF/+F:.>3'C7&GA*;2'>5'N<':;+:;.J:'CL&CM4uwfjfpu~
4.韩语配音更多>>中文配音 普通话配音 粤语配音 上海话配音 重庆话配音 东北话配音 河南话配音 闽南语配音首页→ 外语配音→ 韩语配音 Korean Dubbing 韩语是韩国的官方语言,而在朝鲜继续称为朝鲜语,二者本质相同。现代韩语是以首尔(即汉城)官方话为标准的“标准韩国语”,朝鲜使用的朝鲜语则为“标准朝鲜语”。中国官方定义其正jvzq<84yyy4tjnsifqth0lto1et02:2250nuou
5.韩文输入法免费下载WIN7韩语韩文输入法补丁1.0冰凌五笔输入法86(大雪版) 2.58 MB/简体中文 软件介绍 相关专题 相关教程 下载地址 特色推荐 网友评论 WIN7韩语韩文输入法补丁是Win7系统自带韩语输入法(朝鲜语输入法)的补丁,帮你解决韩语输入法失踪的问题。本站提供WIN7韩语韩文输入法补丁免费下载。 win7应该是自带韩语输入法的,但是不知道为什么突然就没了,小jvzquC41yy}/zryqpi€iksnc0pku1|thv1?99A90jvsm
6.2025国家公务员考试0502外国语言文学(仅越南语方向)专业可报考有些边检站还会因接壤或流动人口的特性,增加针对出入境人员的小语种专业的需求。如泰语、越南语、朝鲜语等。 海事局 海事局(交通运输部海事局)为交通运输部直属行政机构,实行垂直管理体制,专科及以上学历即可报考,部分职位需经常随船执法,水上工作,夜班较多。 jvzquC41if4iwjyw0eun1;5461672B498:91:?3jvor
7.职位发布|上海外国语大学学生就业创业服务网(学硕),希伯来语,希腊语,广告学,广播电视学,德语,德语(德语-工商管理双学士学位),德语口译,德语语言文学,思想政治教育,意大利语,成人教育学,政治学与行政学,政治学理论,教育技术学,数据科学与大数据技术,新闻与传播,新闻学,日语,日语口译,日语语言文学,朝鲜语,朝鲜语口译,欧洲语言文学,比较政治与区域国别,比较教育学,比较文学与世界文学,比较文学与跨文化jvzquC41ecxfg{3ujkyv0niw0et0rxxkvkuo0qyonA}jfF7728643:5366=17:5:58,kqky{rgC3
8.2022考研择校:英语专业28所考研院校推荐考研有英语、法语、日语、德语、西班牙语、阿拉伯语、朝鲜语(韩国语方向)等七个专业。英语系现有英语语言文学博士点,英语语言文学硕士点,外国语言学及应用语言学硕士点。现有本科生、研究生、博士生1,600余人。学院各专业研究方向鲜明,在语言文学研究、翻译理论与实践研究、语言学及应用语言学、当代西方文论、同传教学研究jvzquC41mcuzcw3mqqrfc{s0eqs049732:641:9855>70qyon
9.考导游证需要哪些条件考试语种分为中文和外语两种,其中外语类包括英语、日语、俄语、法语、德语、西班牙语、朝鲜语、泰语等。 上述科目内容,分别从了解、熟悉、掌握等三个层次对考生进行考察。 考导游证需要哪些条件3 一、报名条件 (一)中华人民共和国公民; (二)具有高级中学、中等专业学校或者以上学历; jvzquC41yy}/qq6220ipo8pcqunj1mfq{q{{jnsi17642?>0jvsm