delphi翻译中文(Delphi怎样支持多国语言)

2024-06-30 14:57:47 9

delphi翻译中文(Delphi怎样支持多国语言)

本文目录

Delphi怎样支持多国语言

Delphi的多语言是这么用的,但是添加多语言后编译连接速度很慢,有时候10来分钟。可以把你的Delphi的窗体文件分给翻译来翻译,如果是Delphi7,需要先用Conver.exe来转换为文本格式。1、Project-New Application 创建你的中文版软件。2、Project-Language-Add 添加你的语言,比如美国英语(ENU)。或者File-New-Others-Dll Wizard3、保存后生成多个文件夹。4、Project-Build All5、程序目录下生成和工程文件同名的语言文件:MyExe.ENU;MyExe.CHN,软件发布需要带这些文件。6、把软件里面所有字符串定义为资源字符串。resourcestringC_AppTitle = ’xx管理系统’;C_Error = ’错误’;C_Warning = ’警告’;7、在软件中用如下代码切换语言:const//定义你的多语言:ENGLISH = (SUBLANG_ENGLISH_US shl 10) or LANG_ENGLISH;CHINESE = (SUBLANG_CHINESE_SIMPLIFIED shl 10) or LANG_CHINESE;usesReInit; ...if LoadNewResourceModule(ENGLISH) 《》 0 thenbeginReInitializeForms();end;更多请参考Delphi帮助,里面写得更清楚。其实感觉最好还是用INI文件把所有语言条目提取出来记录,并且将INI翻译成多份(多种语言),程序启动时从INI文件中加载语言。CSDN上有介绍用TLMPack的,你也可以尝试一下: 1。在Delphi(或BCB)中安装TLMPack标准版,关于如何安装帮助文件中有比较详细的说明了,这里不在累述了。(当然安装标准版的前提是你使用标准的AnsiVCL控件来开发的程序,如果你使用TntUnicode控件来开发程序,那么相对应,必须使用Unicode版的TLMPack)。 2。打开你需要升级成多国语言的工程,在每一个Form(以及QReport,Module等)上放置一个TtlmController控件,这个控件的作用是自动改变其所在Form上所有控件的显示文字,一般情况下只需要将该控件放置在Form上就可以了,不需要作任何设置。 3。Form上的控件现在已经可以自己根据语言设置的变换而自动更新了,那么像MessageBox()这样的函数中显示的文字怎么办呢,答案是使用TtlmController的Translate()函数,这个函数可以自动到当前使用的语言文件中取得文字资源然后作为返回值返回出来,假设已有一段函数是这样的: 代码: procedure TForm1.Button1Click(Sender:TObject); begin MessageBox(Handle, PChar(’Say hello to the user!’), ’Message’, MB_ICONINFORMATION); end; 那么你需要将文字的部分使用Translate函数包装起来,包装后就像这样: 代码: procedure TForm1.Button1Click(Sender:TObject); begin MessageBox(Handle, PChar(tlmController1.Translate(’SayHello’, ’Say hello to the user!’)), ’Message’, MB_ICONINFORMATION); end; 前面的‘SayHello’是对文字的标识,通过这个标识程序才能从语言文件中找到正确的资源,后面的文字作用是当语言文件中不存在需要寻找的资源(或者语言文件不存在时),该函数默认所返回的内容。 另外,Translate函数还支持同Format()函数一样的参数显示,如这样: 代码: procedure TForm1.Button1Click(Sender:TObject); begin MessageBox(Handle, PChar(tlmController1.Translate(’ComponentCount’, ’ComponentCount = %d’, )), ’Message’, MB_ICONINFORMATION); end; 4。以上的MessageBox()函数是出现在Form中的,并且该Form中已经有TtlmController控件了,所以才可以使用TtlmController的Translate()函数进行文字的转换,那么如果你的工程中有一个直接从TObject继承而来的功能类,它也需要显示Message,或者需要记载Log文字等,这时候该怎么办呢,最简单的方法是让这个功能类去调用某个Form中的TtlmController的Translate()函数,但是这样的缺点是程序可能需要为此做较大的改动,另外语言文件中的文字也将变得混乱不堪。那么这个时候最好的解决方案就是使用TtlmObject类,该类同TtlmController类一样,也有Translate函数可以使用,但是区别是它不会侦测所在Form的所有控件,不会对它们进行自动转换。 以下这个类是个小型的功能类。 代码: interface uses ....; type TFunctionClass = class(TObject) public procedure ShowMessage(); end; impenmentation procedure TFunctionClass.ShowMessage(); begin ShowMessage(nil, ’Say hello to the user!’, ’Message‘, MB_ICONINFORMATION); end; end. 使用TtlmObject类后,该类被改造为: 代码: interface uses ...., TLMObject; type TFunctionClass = class(TObject) private FtlmObject:TtlmObject; public constructor Create(); destructor Destroy();override; procedure ShowMessage(); end; impenmentation constructor TFunctionClass.Create(); begin inherited Create(); FtlmObject:=TtlmObject.Create(self); end; destructor TFunctionClass.Destroy(); begin FtlmObject.Free; inherited Destroy(); end; procedure TFunctionClass.ShowMessage(); begin MessageBox(Handle, PChar(tlmController1.Translate(’ComponentCount’, ’ComponentCount = %d’, )), ’Message’, MB_ICONINFORMATION); end; end. 这样每当使用该功能类中需要文字显示的函数时,真正使用的文字就是语言文件中记载的内容了。 5。TLMPack是从外部语言文件来加载语言文字的,由于完全手工写一个语言文件是一件比较枯燥的事,所以你可以使用向导控件来由程序,如果你打算自己手工来撰写一个语言文件,那么可以忽略该小节。 所谓的向导控件是指:TtlmIniGenerator和TtlmXmlGenerator这两个控件,它们会在程序运行时,将所有原本需要TtlmController和TtlmObject读取的文字,反向输出到语言文件中,你所要做的就是在程序的主窗体上放置一个TtlmIniGenerator(这里假设你要输出的是Ini格式的语言文件):

delphi怎么用代码来实现翻译的功能

bfmbfmbfm 说的好。补充一下1 字典 这类字典网上有现成的,但是比较难找这是在本地实现, 从数据库中根据单词查询出来,如果要整句成段的翻译,需要一定比较复杂的算法 如分词 语言逻辑等等。2 翻译的webservice免费webservice好像没有,有也不稳定吧 不建议 除非自己搭建webservice。***隐藏网址******隐藏网址***

Delphi怎么读

Delphi 特尔斐 delphi是一种集成开发环境不是开发语言它用的是pascal语言

delphi基础翻译

  • TChatForm中的LISTEMITEM被下时执行此程序

  • 当TCHATFORM被单击时执行命令

请把delphi里的“ properties“” 属性选项卡里面翻译成中文我E文不好

如果这都要翻译成中文的话,我觉得你还是不要学程序的好,因为程序也是拿英文写的,目前尚不支持中文代码。

一个Delphi帮助语句的翻译

to-do在DELPHI中准确的是表示待处理的意思。添加备注时经常用到。全句的意思,就是返回待处理列表中的文本值。我们在器中,右键 --》 选择Add To-do Item(或《Shift》+《Ctrl》+T),就可以创建TODO列表,形式如: { TODO : Info } 返回值应该是指 Info.

delphi翻译中文(Delphi怎样支持多国语言)

本文编辑:admin

本文相关文章:


delphi翻译中文(请把delphi里的“ properties“” 属性选项卡里面翻译成中文我E文不好)

delphi翻译中文(请把delphi里的“ properties“” 属性选项卡里面翻译成中文我E文不好)

本文目录请把delphi里的“ properties“” 属性选项卡里面翻译成中文我E文不好Delphi怎样支持多国语言一个Delphi帮助语句的翻译delphi怎么用代码来实现翻译的功能delphi基础翻译Delphi怎么读请把delph

2024年7月22日 21:42

delphi翻译中文(一个Delphi帮助语句的翻译)

delphi翻译中文(一个Delphi帮助语句的翻译)

本文目录一个Delphi帮助语句的翻译Delphi怎么读Delphi怎样支持多国语言delphi怎么用代码来实现翻译的功能请把delphi里的“ properties“” 属性选项卡里面翻译成中文我E文不好delphi基础翻译一个Delph

2024年6月28日 22:47

delphi翻译中文(delphi怎么用代码来实现翻译的功能)

delphi翻译中文(delphi怎么用代码来实现翻译的功能)

本文目录delphi怎么用代码来实现翻译的功能Delphi怎样支持多国语言一个Delphi帮助语句的翻译Delphi怎么读delphi基础翻译请把delphi里的“ properties“” 属性选项卡里面翻译成中文我E文不好delphi怎

2024年6月20日 00:25

更多文章:


java下载什么版本的合适(windows10安装java需要什么版本)

java下载什么版本的合适(windows10安装java需要什么版本)

本文目录windows10安装java需要什么版本什么版本的java好用jdk6还是jdk8还是学JAVA下哪个版本的JDK好windows10安装java需要什么版本查看自己的电脑是32位的还是64位的(x86代表32位的)。java安装

2024年3月7日 06:45

ridiculous什么意思(ridiculous是什么意思)

ridiculous什么意思(ridiculous是什么意思)

本文目录ridiculous是什么意思absurb 与ridiculous的区别ridiculous丶什么意思ridiculous什么意思ridiculous是什么意思ridiculous英 [rɪˈdɪkjələs]美 [rɪˈdɪkjə

2024年7月12日 13:19

shib币推特最新消息(屎币shib为什么暴跌)

shib币推特最新消息(屎币shib为什么暴跌)

本文目录屎币shib为什么暴跌shib币最新消息暴跌后能涨吗shib币适合长期持有吗shib币总发行量是多少枚shib币怎么了shib币未来前景shib币价格今日行情是多少屎币shib为什么暴跌屎币shib为什么暴跌?最近一段时间虚拟货币非

2024年7月9日 19:13

biki交易所(今年的黑马交易所抹茶与BIKI对比怎么样)

biki交易所(今年的黑马交易所抹茶与BIKI对比怎么样)

“biki交易所”相关信息最新大全有哪些,这是大家都非常关心的,接下来就一起看看biki交易所(今年的黑马交易所抹茶与BIKI对比怎么样)!本文目录今年的黑马交易所抹茶与BIKI对比怎么样中国币圈交易所前20排名biki交易所突然登录不了u

2024年7月13日 15:40

直线轴承的导轨适合用什么材料载重在100公斤 速度每秒5米十二分感谢?直线轴承|直线导轨轴承有哪些类型啊

直线轴承的导轨适合用什么材料载重在100公斤 速度每秒5米十二分感谢?直线轴承|直线导轨轴承有哪些类型啊

本文目录直线轴承的导轨适合用什么材料载重在100公斤 速度每秒5米十二分感谢直线轴承|直线导轨轴承有哪些类型啊对数控机床的导轨有那些要求试叙述其工作原理直线轴承的导轨适合用什么材料载重在50-75公斤 速度每秒不到一米 小弟跪求直线轴承的导

2024年7月20日 02:03

php与js的区别(html标签,php标签,js标签这些是不是一类东西,是什么啊它们有什么区别呢)

php与js的区别(html标签,php标签,js标签这些是不是一类东西,是什么啊它们有什么区别呢)

大家好,php与js的区别相信很多的网友都不是很明白,包括html标签,php标签,js标签这些是不是一类东西,是什么啊它们有什么区别呢也是一样,不过没有关系,接下来就来为大家分享关于php与js的区别和html标签,php标签,js标签这

2024年8月28日 15:25

二叉判定树和二叉排序树有什么区别?二叉排序树定义

二叉判定树和二叉排序树有什么区别?二叉排序树定义

本文目录二叉判定树和二叉排序树有什么区别二叉排序树定义二叉排序树二叉排序树的定义查找效率最高的二叉排序树是请问二叉排序树的规则是什么二叉排序树怎么构造二叉排序树的应用二叉排序树有多深二叉排序树的构造过程二叉判定树和二叉排序树有什么区别一、用

2024年6月24日 16:18

不会英语可以学编程吗?(不会英语可以学习编程专业吗)

不会英语可以学编程吗?(不会英语可以学习编程专业吗)

本文目录不会英语可以学习编程专业吗不会英语,可以学习编程专业吗英语不好可以学习编程吗英语不好可以学编程吗不会英语可以学习编程专业吗当然可以,对编程来说,英语更像是一个符号而已。你用得多了,自然就知道这个单词的意思,其实真正用到的,就那些个而

2024年6月5日 04:37

字节换算公式(字节和G怎么换算)

字节换算公式(字节和G怎么换算)

本文目录字节和G怎么换算字节怎样计算字节怎么换算字节如何计算1KB=多少B=多少byte=多少bit字节换算是什么字节和G怎么换算1GB=1024MB= 2^30B。字节(Byte)是计算机信息技术用于计量存储容量的一种计量单位,作为一个单

2024年7月6日 20:43

对象不能犯的未遂(什么是法律规定杀人未遂)

对象不能犯的未遂(什么是法律规定杀人未遂)

本文目录什么是法律规定杀人未遂如何判定构成故意杀人未遂对象错误,具体符合说和法定符合说为什么结论一样,都成立故意杀人既遂什么是法律规定杀人未遂故意杀人未遂是根据我国《刑法》第二百三十二条的规定,是指故意的非法剥夺他人生命的行为,由于行为人的

2024年6月29日 09:54

with怎么读(with怎么发音)

with怎么读(with怎么发音)

本文目录with怎么发音with怎么读,有什么用处with这个单词怎么读with怎么读出来with怎么读WITH读音问题with怎么读正确发音with怎么发音一、with的音标:英 二、释义:prep.随着;和,跟;关于;和…一致Serve

2024年5月13日 03:15

yml船公司货物追踪(世界著名的航运公司有哪些.)

yml船公司货物追踪(世界著名的航运公司有哪些.)

本文目录世界著名的航运公司有哪些.从德国海运货物,要多久能到中国的上海港求各个船公司对20GP, 40GP, 40HQ的限重!世界著名的航运公司有哪些.1、MAERSK 马士基Mearsk以自大、死板、守信誉著称,其上缴税收占到丹麦go-v

2024年7月16日 06:29

服务器用 UDP 完成端口,当客户端(非正常)断开网络连接,返回 1234 错误,之后就不能收到客户端数据?已经完成端口映射现在外网连什么IP可以连接到我电脑

服务器用 UDP 完成端口,当客户端(非正常)断开网络连接,返回 1234 错误,之后就不能收到客户端数据?已经完成端口映射现在外网连什么IP可以连接到我电脑

本文目录服务器用 UDP 完成端口,当客户端(非正常)断开网络连接,返回 1234 错误,之后就不能收到客户端数据已经完成端口映射现在外网连什么IP可以连接到我电脑完成端口投递WSARecv时返回10014,求助怎么知道 完成端口绑定 多少

2024年6月22日 14:00

centos7检查存储配置出错(安装centos7出现这个提示,怎么办)

centos7检查存储配置出错(安装centos7出现这个提示,怎么办)

本文目录安装centos7出现这个提示,怎么办VMware安装CentOS7时遇到的提示错误fedora安装出现error checking storage configuration(检查存储配置错误)怎么解决啊centos7.8安装操作

2024年7月21日 10:04

keypress事件用法(5 若要选择Text对象的Text1_KeyPress事件,可以)

keypress事件用法(5 若要选择Text对象的Text1_KeyPress事件,可以)

各位老铁们好,相信很多人对keypress事件用法都不是特别的了解,因此呢,今天就来为大家分享下关于keypress事件用法以及5 若要选择Text对象的Text1_KeyPress事件,可以的问题知识,还望可以帮助大家,解决大家的一些困惑

2024年7月30日 18:35

sql语句查询和使用(查询参数提高SQL语句的利用率)

sql语句查询和使用(查询参数提高SQL语句的利用率)

本文目录查询参数提高SQL语句的利用率sql语句模糊查询like用法SQL语句中查询的用法关于数据库SQL语句的查询查询参数提高SQL语句的利用率   有时候数据库管理员在查询记录的时候 有可能只是查询条件不同 而其他的内容都是相同的 如人

2024年7月9日 15:10

根目录下是什么意思(放在根目录下 是什么意思)

根目录下是什么意思(放在根目录下 是什么意思)

本文目录放在根目录下 是什么意思到底什么是根目录,根文件夹根目录是什么意思什么叫根目录华为华为手机根目录是什么意思“放入手机根目录“是什么意思放在根目录下 是什么意思1、这首先要搞清楚根目录的含义,其实根目录指逻辑驱动器的最上一级目录,它是

2024年5月24日 01:26

第二列在第一列重复的数据(excel中第一列对应的第二列中有重复值怎么做才能在引用第一列数据时把第二列)

第二列在第一列重复的数据(excel中第一列对应的第二列中有重复值怎么做才能在引用第一列数据时把第二列)

这篇文章给大家聊聊关于第二列在第一列重复的数据,以及excel中第一列对应的第二列中有重复值怎么做才能在引用第一列数据时把第二列对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。本文目录excel中第一列对应的第二列中有重复值怎么做才能

2024年9月6日 02:35

链表c语言代码实现(用C语言实现链表的算法)

链表c语言代码实现(用C语言实现链表的算法)

各位老铁们好,相信很多人对链表c语言代码实现都不是特别的了解,因此呢,今天就来为大家分享下关于链表c语言代码实现以及用C语言实现链表的算法的问题知识,还望可以帮助大家,解决大家的一些困惑,下面一起来看看吧!本文目录用C语言实现链表的算法用C

2024年7月29日 22:25

科技公司官网模板(本人想制作一个手机wap网站,要电脑和手机都可访问和管理的,那里有比较好的制作公司或网站模板出售)

科技公司官网模板(本人想制作一个手机wap网站,要电脑和手机都可访问和管理的,那里有比较好的制作公司或网站模板出售)

各位老铁们好,相信很多人对科技公司官网模板都不是特别的了解,因此呢,今天就来为大家分享下关于科技公司官网模板以及本人想制作一个手机wap网站,要电脑和手机都可访问和管理的,那里有比较好的制作公司或网站模板出售的问题知识,还望可以帮助大家,解

2024年7月18日 15:01

近期文章

本站热文

iphone vpn设置(ios设置vpn快捷开关)
2024-07-22 15:01:12 浏览:2334
windows12正式版下载(操作系统Windows Server 2012 R2,在哪能下载到,公司用的)
2024-07-20 17:26:53 浏览:1730
java安装教程(win10如何安装JAVA)
2024-07-19 19:55:49 浏览:1154
client mfc application未响应(每次进cf就提示client MFC Application未响应该怎么办啊!急急急)
2024-07-20 11:15:58 浏览:1151
标签列表

热门搜索