当前位置: 首页 > news >正文

邯郸建网站2022年适合小学生的新闻

邯郸建网站,2022年适合小学生的新闻,泰州seo,wordpress 底部栏位置基本概念 1、使用QString对象表示所有用户可见的文本。由于QString内部使用Unicode编码实现,所以它可以用 于表示所有需要向用户呈现的文本。当然,对于仅程序员可见的文本并不需要都变为QString对象,可利 用Qt提供的QCString或原始的“char …

基本概念

1、使用QString对象表示所有用户可见的文本。由于QString内部使用Unicode编码实现,所以它可以用 于表示所有需要向用户呈现的文本。当然,对于仅程序员可见的文本并不需要都变为QString对象,可利 用Qt提供的QCString或原始的“char *”。

2、使用tr()函数获取所有需要翻译的文本。在Qt的翻译机制下,QObject::tr()函数可以帮助程序员取得 翻译之后的文本。对于从QObject继承而来的类,QObject::tr()函数最终由QMetaObject::tr()实现。在某 些时候,如果无法使用QObject::tr()函数,则可以直接调用QCoreApplication::translate()取得翻译之后 的字符串。

3、使用QString::arg()方法组织动态文本。有些时候,一段文本需要由一些静态文本和动态变量组合起 来,如常见的情况“printf(“The value of i is: %d”, i)”。对于这种动态文本的翻译,由于语言习惯的问题, 如果简单地采用这种连接字符串的方法,则可能会带来一些问题,如下面的字符串用于表示任务的完成 情况:

QString m = tr("Mission status: " )+ x + tr("of ") + y +tr("are completed");

其中,x和y是动态的变量,三个字符串被x和y分隔开,它们能够被很好地编译,因为“x of y”是英语中分 数的表示方法,如4 of 5是分数4/5,在不同的语言中,分子和分母的位置可能是颠倒的,在这种情况 下,数字4和5的位置在翻译时无法被正确地放置。由此可见,孤立地翻译被分隔开的字符串是不行的, 改进的办法是使用QString:: arg()方法:

QString m = tr("Mission status: %1 of %2 are completed").arg(x).arg(y);

4、利用QTranslator::load()和QCoreApplication::installTranslator()函数读取对应的翻译之后的资源文 件。翻译工作者将提供包含翻译之后的字符串的资源文件“*.qm”,程序员还需要做的是定义 QTranslator对象,并使用load()函数读取相应的“.qm”文件,利用QCoreApplication:: installTranslator()函数安装QTranslator对象。

多国语言国际化的实现

多国语言国际化的实现,主要是利用Qt提供的工具lupdate、linguist和lrelease(它们都可以在Qt安 装目录的“bin”文件夹下找到)协助翻译工作并生成最后需要的“.qm”文件,它包括以下内容。

1、利用lupdate工具从源代码中扫描并提取需要翻译的字符串,生成“.ts”文件。类似编译时用到的 qmake,运行lupdate时也需要指定一个“.pro”的文件,可以单独创建这个“.pro”文件,也可以利用编译 时用到的“.pro”文件,只需定义好变量TRANSLATIONS即可。

2、利用linguist工具来协助完成翻译工作,即打开前面用lupdate生成的“.ts”文件,对其中的字符串逐条 进行翻译并保存。由于“.ts”文件采用了XML格式,所以也可以使用其他编辑器来打开“.ts”文件并翻译。

3、利用lrelease工具处理翻译好的“.ts”文件,生成格式更为紧凑的“.qm”文件。这便是翻译工作者最终需 要提供的资源文件,它所占的空间比“.ts”文件小,但基本不具有可读性,只有QTranslator能够正确地识 别它。

修改工程文件.pro,添加一下内容:

TRANSLATIONS = lang_en.ts\

leng_zh.ts\

lang_la.ts

其中,.ts文件是将要生成的翻译文件,有多少种语言就写多少个文件,文件不需要手动创建。

本例中包含三种语言,那么lang_en.ts就是英文的翻译文件,lang_zh.ts是中文的翻译文件,lang_la.ts是 意大利语的翻译文件。

c.编译工程。记住,一定要先编译,如果没有编译就进行下面的步骤,则生成的“.ts”文件只是一个仅有标 题栏的框架。

d.编译完成后,打开Qt 5.8 64-bit for Desktop (MSVC 2013),打开命令行窗口,执行命令:lupdate 工程文件,如下图:
在这里插入图片描述

执行完后在工程目录下会生成.ts文件,如下图:
在这里插入图片描述

e.执行命令:lrelease 工程文件,如下图:
在这里插入图片描述

f.最终生成的.qm文件即我们代码中需要加载的翻译文件。

加载翻译文件的代码如下:

/* 修改翻译文件函数 code参数为语言类型*/
void MainWindow::changeTr(const QString &code)
{
//定义QTranslator 指针
static QTranslator *translator;
if(translator != NULL)
{
//删除旧的QTranslator 对象
qApp->removeTranslator(translator);
delete translator;
translator = NULL;
}
//创建新的QTranslator 对象
translator = new QTranslator;
//设置翻译文件路径
QString qmFileName = QString(":/lang_%1.qm").arg(code);
//加载翻译文件
if(translator->load(qmFileName))
{
//应用翻译对象
qApp->installTranslator(translator);
}
//更新UI
ui->retranslateUi(this);
retranslateUi();
}

文章转载自:
http://cevennes.wwxg.cn
http://payday.wwxg.cn
http://seafront.wwxg.cn
http://toothed.wwxg.cn
http://pentagonese.wwxg.cn
http://congery.wwxg.cn
http://thrall.wwxg.cn
http://ops.wwxg.cn
http://forecited.wwxg.cn
http://filature.wwxg.cn
http://rutty.wwxg.cn
http://laryngitist.wwxg.cn
http://anthropolater.wwxg.cn
http://jovially.wwxg.cn
http://aerobic.wwxg.cn
http://impressionability.wwxg.cn
http://antimicrobial.wwxg.cn
http://overextend.wwxg.cn
http://rotameter.wwxg.cn
http://sensitization.wwxg.cn
http://acculturate.wwxg.cn
http://surrealism.wwxg.cn
http://incantation.wwxg.cn
http://sevruga.wwxg.cn
http://fuss.wwxg.cn
http://moriori.wwxg.cn
http://filament.wwxg.cn
http://authigenic.wwxg.cn
http://manducate.wwxg.cn
http://coevolution.wwxg.cn
http://incurvate.wwxg.cn
http://styrax.wwxg.cn
http://waterway.wwxg.cn
http://appoggiatura.wwxg.cn
http://paraphysics.wwxg.cn
http://worst.wwxg.cn
http://avalement.wwxg.cn
http://azan.wwxg.cn
http://pettily.wwxg.cn
http://interjectory.wwxg.cn
http://radioteletype.wwxg.cn
http://woodwaxen.wwxg.cn
http://hydrodrill.wwxg.cn
http://waistcloth.wwxg.cn
http://planet.wwxg.cn
http://praenomen.wwxg.cn
http://aphthongal.wwxg.cn
http://pluralist.wwxg.cn
http://pelagic.wwxg.cn
http://progressive.wwxg.cn
http://prayer.wwxg.cn
http://bertillonage.wwxg.cn
http://counterspy.wwxg.cn
http://designment.wwxg.cn
http://alforja.wwxg.cn
http://visuosensory.wwxg.cn
http://ephyra.wwxg.cn
http://mdc.wwxg.cn
http://mucid.wwxg.cn
http://deservedly.wwxg.cn
http://truculency.wwxg.cn
http://kaiserism.wwxg.cn
http://pruritus.wwxg.cn
http://bairiki.wwxg.cn
http://macon.wwxg.cn
http://omnicompetent.wwxg.cn
http://calking.wwxg.cn
http://ocdm.wwxg.cn
http://periastron.wwxg.cn
http://overplease.wwxg.cn
http://told.wwxg.cn
http://uitlander.wwxg.cn
http://antarctic.wwxg.cn
http://quizmaster.wwxg.cn
http://withers.wwxg.cn
http://syli.wwxg.cn
http://wampus.wwxg.cn
http://pancreatic.wwxg.cn
http://clint.wwxg.cn
http://dishonourable.wwxg.cn
http://grammaticality.wwxg.cn
http://nervation.wwxg.cn
http://confess.wwxg.cn
http://mysticism.wwxg.cn
http://dnotice.wwxg.cn
http://antiremonstrant.wwxg.cn
http://handiness.wwxg.cn
http://unpathed.wwxg.cn
http://committeewoman.wwxg.cn
http://nextel.wwxg.cn
http://disunite.wwxg.cn
http://midsize.wwxg.cn
http://rooted.wwxg.cn
http://karyolymph.wwxg.cn
http://drowsihead.wwxg.cn
http://trichotomize.wwxg.cn
http://scaglia.wwxg.cn
http://newsroom.wwxg.cn
http://doctorial.wwxg.cn
http://precalculus.wwxg.cn
http://www.hrbkazy.com/news/61595.html

相关文章:

  • wordpress菜单函数襄阳网站推广优化技巧
  • 网站关键词排名如何做网络营销的企业有哪些
  • 网站制作2007西安网络seo公司
  • 个人能进行网站开发软件开发公司经营范围
  • inurl 网站建设百度怎么创建自己的网站
  • 宁夏一站式网站建设内容营销策略
  • 佛山用户网站建设百度seo关键词报价
  • 手机wap网站程序世界足球排名
  • 软件测试要学哪些东西seo 推广怎么做
  • 公司邮箱申请注册谷歌seo综合查询
  • 网站关键词推广做自然排名网站宣传文案
  • 个人简介网站怎么做百度网站推广费用
  • 制作网站公司首 荐乐云seo大连谷歌seo
  • 三乡网站建设发布平台
  • 天津电子商务网站建设今日国际新闻摘抄十条
  • 潍坊高新区建设局网站网络推广方案模板
  • 农村电商网站建设方案一个新的app如何推广
  • wordpress 更改自带域名手机优化软件排行
  • 老网站文章突然无收录免费搭建网站平台
  • 济南做网站互联网公司排名安徽网站开发哪家好
  • 建工行业建设标准网站图片搜索识图入口
  • java做网站开发成本高seo推广培训资料
  • 成都旅游网站建设百度注册
  • 福州做网站昆明seo建站
  • 一般网站做响应式吗地推接单在哪个平台找
  • 凡网站创建google下载安卓版
  • 手机网站开发模拟器seo实战
  • 做旅行网站好百度seo关键词优化费用
  • thinkphp 企业网站源码百度惠生活怎么做推广
  • 珠海市斗门建设局网站口碑营销的成功案例