分享
 
 
 

"Delphi之完全汉语"终结版

王朝delphi·作者佚名  2006-01-08
窄屏简体版  字體: |||超大  

"Delphi之完全汉语"终结版(已于“家用电脑”37期发表,新瓶旧醋请谅解!)

西安 梁 明

--------------------------------------------------------------------------------

本人在写此段文章前曾有这样一个肮脏的念头:绝对不能把这一招"漏给"别人!但是,良心马上告诉我,绝对不能有如此的想法!于是立刻把她写下来,既算是对上次那篇"Delphi之完全汉语"文章的补充,又算是对自己良心的报答吧!

现在切入正题:大家知道,我们在处理Delphi自身的消息时(我这里指的是包括Delphi系统对话框、异常提示等所有来自Delphi自身的消息),一般采取的办法是"走在Delphi的前面",或是屏蔽掉系统的作用,从而用我们自己的方式处理,以期达到为用户提供纯汉语环境的目的.然而,这一切只能凭借程序员的已有经验来主观预测!由于系统的复杂性以及我们自身的水平所限,这样作的结果难免会顾此失彼,也许随时可能发生的问题都处理得不彻底甚至根本就未处理.试想:在用户使用过程中冒出一些英文的提示,你的程序的"档次"是不是将大打折扣?

因此,我们还必须去寻找更加理想更加彻底的方法,至少,当让程序出现Bug时,普通用户能看懂提示(可不是让你为所欲为与噢).幸好,经过笔者这一阵的反复试验,已经找到另一个万全之策.下面就请听我一一道来(仅限于你的Delphi版本有VCL的源代码--即专业版或企业版):

0.备份Delphi的VCL源代码(所在目录一般为"X:\Program Files\Borland\Delphi4\Source\Vcl").当然,根据需要,仅备份我们需要修改的几个文件也可;

1.在Delphi环境下打开VCL目录下的BdeConst.pas,Consts.pas,BdeConst.pas,DbConsts.pas,midconst.pas,mxConsts.pas,OleConst.pas,WebConst.pas等单元文件,这些单元文件定

义了Delphi用到的常量;

2.把Delphi自己定义的字符串常量"翻译"成我们伟大的母语--汉语;

3."翻译"工作完成后,按原文件名保存;

4.现在就来试试我们的成果,新建一个工程,故意编写一些会出现系统提示的代码,并在编译前,到Delphi的Project Options对话框的Directories/Conditionals页的Search Path选项下,添加搜索路径(也即刚才我们修改常量单元所在的目录),确定后退出;

5.就观看你的英语翻译水平吧!

注意:

①如果你的版本为Delphi 3的话,以上的路径作相应的变化,且Project Options对话框的Directories/Conditionals为Directories;

②对编译条件的该动只对此工程有效,新建工程后需重新设置.如果你希望一劳永逸的话,请随我来:

运行Windows注册表编辑程序Regedit.exe,打开HKEY_CURRENT_USER->Software->Borland->Delphi->4.0->Library,在其中一为"Search path"的串值中加入"$(DELPHI)\Source\VCL".Ok,目的达到!

以下是笔者修改Consts.pas单元文件中函数MessageDlg的常量后用该函数发送的消息.这次,我们看到的再也不是半"英"半阳的消息框了.怎么样,够靓吧?

...

Begin

MessageDlg('感觉如何?'+#13#10#13#10+

'我这里即是把"SMsgDlgInformation"翻译为''消息'';'+#13#10+

'把"SOKButton"翻译为''确定''而得到的结果!',

mtInformation,[mbok],0);

End;

...

****此处插入图4****

上面的动作是不是太老实了一点?!其实,我们完全可以根据自己的意愿来定制这些常量(只要Inprise同意),使其达到一种的特殊效果,比如,我们可以将"SMsgDlgInformation"翻译为你的软件标题或自己的工作室名称等等,如此一来,你的非凡个性将展示无遗!

有关Delphi"完全汉语"方面的经验、技巧笔者就打算介绍这么多(等我手上的这两个程序有交待后我会把这一整套东东放在我的个人主页上,到时请去Down吧).当然,冠以"完全汉语"实令我脸红,但本人多么希望Inprise公司早点结束我们"羡慕"VB程序员的时代!

现在还有一些问题,例如:Delphi的环境是英文的,报表预览的提示及按钮也是英文的等等.对于第一个问题,我个人认为倒没有多大必要,因为没有哪一个程序员连菜单都看不懂的,我们努力的目标是用户;对于第二个问题也有办法解决,在此本不应该涉及此话题,但我在网上看到有很多人在问这个问题,因此也在此略谈一下,作为这个话题的结尾吧:

①按照要求制订好QuickRep的内容;

②仿照QuickRep的预览模式或自己定制QRPreview;

③在QuickRep的OnPreview事件中将QuickRep的QRPrinter赋值给QRPreview的QRPrinter

(如QRPreview1.QRPrinter:=Quickrep1.QRPrinter;)即可让QRPreview取代QuickRep

的预览模式了.

版主:梁明

日期:1999-03-01

E-mail:delphifan@990.net

--------------------------------------------------------------------------------

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有