- 1、本文档共11页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
关于DELPHI程序多语言支持的问题关于DELPHI程序多语言支持的问题
----------------仅供学习参考----------------
关于DELPHI程序多语言支持的问题
写DELPHI程序,是如何实现繁体化的?是如何开发英文版的?是通过外挂语言包吗?我完整地说一下我的问题:我写一个DELPHI程序,开发环境是是简体中文版本win xp系统+ Delphi 7的。现在想做一个繁体版本以及其他非简体中文版本的出来。此时遇到这几个问题:
1、在非简体中文系统中均出现乱码或界面文字错位。2、而且语言包速度太慢了,每次启动要预读一下语言文件进行界面翻译,工程量大的时候明显感到启动速度下降了3、因为工程量比较大,逐一设置“提示内容”及“界面内容”的语言包比较麻烦,所以不想用ini文件或dll资源库的语言包形式
请问各位DELPHI高手你们是怎么做的?有没有一劳永逸的方法?
听说DELPHI内置的多国语言功能, 有没有用法帮助?还有没有其他一些好用简单强大的Unicode语言包控件?---------------------------------------------------------------------
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文件做多语言,感觉挺好用,Delphi带得这个多语言感觉编译起来太慢,而且总需要Build半天。
利用INI文件实现界面无闪烁多语言切换
程序运行时,我们查找当前目录下所有的语言配置文件(*.ini),为了达到这个目的,我编写了如下的函数有哪些信誉好的足球投注网站目录下所有的语言配置文件的文件名,然后将文件名去掉ini扩展名保存返回: function TForm1.SearchLanguagePack:TStrings; var ResultStrings:TStrings; DosError:integer; SearchRec:TsearchRec; begin ResultStrings:=TStringList.Create; DosError:=FindFirst(ExtractFilePath(ParamStr(0))+*.ini, faAnyFile, SearchRec); while DosError=0 do begin { 返回的文件名并去掉末尾的.ini字符 } ResultStrings.Add(ChangeFileExt(SearchRec.Name,)); DosError:=FindNext(SearchRec); end; FindClose(SearchRec); Result:=ResultStrings; end; 在Form建立的事件中添加代码,将目录下所有的语言文件名加入选择列表框中。 procedure TForm1.FormCreate(Sender: TObject); begin ComboBox1.Items.AddStrings(SearchLanguagePack); end; 程序的重点在如何切换语言,在ComboBox1的OnChange事件中进行切换操作。 这里我写了SetActiveLanguage过程用于实现这一操作。 procedure TForm1.ComboBox1C
您可能关注的文档
- 六年级四班上学期期中家长会六年级四班上学期期中家长会.ppt
- 六年级教材研说六年级教材研说.ppt
- 六年级数学圆的认识六年级数学圆的认识.ppt
- 六年级数学图形的放大和缩小六年级数学图形的放大和缩小.ppt
- 六年级数学下册《整数复习课》PPT课件(北师大版)六年级数学下册《整数复习课》PPT课件(北师大版).ppt
- 六年级数学折扣问题六年级数学折扣问题.ppt
- 六年级数学总复习3六年级数学总复习3.ppt
- 六年级数学统计表1六年级数学统计表1.ppt
- 六年级数学样卷解析六年级数学样卷解析.pdf
- 六年级科学下册 节约能源与开发新能源课件2 苏教版六年级科学下册 节约能源与开发新能源课件2 苏教版.pdf
- 2024高考物理一轮复习规范演练7共点力的平衡含解析新人教版.doc
- 高中语文第5课苏轼词两首学案3新人教版必修4.doc
- 2024_2025学年高中英语课时分层作业9Unit3LifeinthefutureSectionⅢⅣ含解析新人教版必修5.doc
- 2024_2025学年新教材高中英语模块素养检测含解析译林版必修第一册.doc
- 2024_2025学年新教材高中英语单元综合检测5含解析外研版选择性必修第一册.doc
- 2024高考政治一轮复习第1单元生活与消费第三课多彩的消费练习含解析新人教版必修1.doc
- 2024_2025学年新教材高中英语WELCOMEUNITSectionⅡReadingandThi.doc
- 2024_2025学年高中历史专题九当今世界政治格局的多极化趋势测评含解析人民版必修1.docx
- 2024高考生物一轮复习第9单元生物与环境第29讲生态系统的结构和功能教案.docx
- 2024_2025学年新教材高中英语UNIT5LANGUAGESAROUNDTHEWORLDSect.doc
文档评论(0)