- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
delphi 实现多语言界面的最简单方法
简介:这是delphi 实现多语言界面的最简单方法的详细页面,介绍了和Delphi,有关的知识,加入收藏请按键盘ctrl+D,谢谢大家的观看!要查看更多有关信息,请点击此处
基本原理:delphi 的vcl是通过treader 类来对控件进行读写的,再加上vcl的源码开放性,通过修改可以
它,使界面的资源从ini文件中读取:
?1、在classes.pas中添加:
{!$ifdef _multilang}function cl(const s: widestring): string;begin{$ifdef _multilang}? result := convertlanguage(s);{$else}? result := s;{$endif}end;{!$endif}
2、treader.readstring:
function treader.readstring: string;var? l: integer;begin? if nextvalue in [vawstring, vautf8string] then
和?delphi 实现多语言界面的最简单方法?有关的编程小帖士:
strongsoundex
计算字符串的读音值
语法: string soundex(string str);
返回值: 字符串
内容说明
Soundex 值是利用英文字的读音近似值所求得的值,值由四个字符构成,第一个字符为英文字母,后三个为数字。在拼音文字中有时会有会念但不能拼出正确字的情形,特别是在做搜寻引擎时面对用户传入的英文字符串,可用本函数做类似模糊比对的效果。例如 Knuth 和 Kant 二个字符串,它们的 soundex 值都是 H416。
?
使用范例
?
$str1=soundex(Wilson);
$str2=soundex(Waillsume);
echo soundex(\Wilson\)=$str1 等于\n;
echo soundex(\Waillsume\)=$str2\n;
echo 值均为 $str1;
?
上例返回的字符串为
soundex(Wilson)=W425 等于
soundex(Waillsume)=W425
值均为 W425 ??? result := readwidestring? else? begin??? l := 0;??? case readvalue of????? vastring:? read(l, sizeof(byte));????? valstring:? read(l, sizeof(integer));??? else????? propvalueerror;??? end;??? setlength(result, l);??? read(pointer(result)^, l);??? {$ifdef _multilang}????? result := convertlanguage(result);??? {$endif}? ? end;end;
3、treader.readstring:
function treader.readwidestring: widestring;var? l: integer;? temp: utf8string;begin? if nextvalue in [vastring, valstring] then??? result := readstring? else? begin??? l := 0;??? case readvalue of????? vawstring:? begin??? read(l, sizeof(integer));??? setlength(result, l);??? read(pointer(result)^, l * 2);? end;????? vautf8string:? begin??? read(l, sizeof(integer));??? setlength(temp, l);??? read(pointer(temp)^, l);??? result := utf8decode(temp);? end;??? else??? ????? propvalueerror;??? end; ?? ??? {$ifdef _multilang}????? result := convertlanguage(result);??? {$endif}? end;end;
4.multilanguage.pas代码:
{$define _write_
文档评论(0)