8 8
下载了EhLib 4.2 并进行试用后,决定对其进行汉化,以方便中文化的程序开发。因其整个库变化不大,并且以前汉化修改过 EhLib 3.6、EhLib 4.1 等,所以该版的汉化非常简单,和以前的相关文件进行对比汉化差异部分即可,所以整个汉化很快速地完成了。
EhLib 4.2.12 中文汉化版下载:http://www.2ccc.com
在试用 EhLib 4.2 的过程中,发现该版本 Readme.txt 文件标识是 4.2.12 Beta 版,EhLib 官方网站提供的试用版是 EhLib 4.2.16,所以,4.2.12 可能真的不是 EhLib 4.2 的正式版。
EhLib 4.2 最大的变化是增加了指示器标题(IndicatorTitle),该汉化版汉化了默认的全局菜单:

EhLib 的打印预览,该汉化版更改了按钮风格,添加了图标,更加美观:

EhLib 汉化后的打印设置界面:

EhLib 自带的 Grid 查找功能,汉化了所有细节:

EhLib 4.2.12 中文汉化版详细修改的内容:
1. DataService\EhLibADO.pas
第40行,ADODataSetDriverName函数:
原:Result := ‘MSACCESS’
现:Result := ‘MSSQL’
功能:字符串、日期界定符匹配(STFilter.Local=False情况下)
2.Common\EhLibConsts.pas
功能:常数汉化
3.Common\DBGridEhFindDlgs.pas\dfm
A、FillColumnsList函数:
原:cbFindIn.Items.AddObject(’<All>’, nil);
现:cbFindIn.Items.AddObject(‘<全部>’, nil);
B、界面中ComboBox中Items及KeyItems及Text汉化;
C、主界面汉化;
4.Common\PrnDgDlg.pas\dfm
功能:界面汉化
5.Common\PrvFrmEh.pas\dfm
功能:界面汉化
6.Common\PrViewEh.pas
327行 TPreviewBox.Create 方法. 由 FViewMode = vmFullPage 改为 FViewMode = vm100
7.Common\DBUtilsEh.pas
GetOneExpressionAsLocalFilterString 和 GetOneExpressionAsSQLWhereString 函数
功能:查询行字符串查询默认为LIKE查询.
9 评论 - "EhLib 4.2.12 中文汉化版(OneFly.org 修改版)发布"
谢谢站长的汉化。
顺便,我这里想跟您说一下BUG,是EH的,不是你的哦。
就是我在DLL里面加了DBGridEh,再用printdbgrideh进行打印预览之后,退出这个DLL后,应用程序就是报错:“XXXX.exe 产生的错误,会被 Windows 关闭。您需要重新启动程序。”
跟进我的源代码里面去的话,是一些内存错误,出错的地方还就是在“FreeLibrary( DllHandle ) ”这里,真的是百思不得其解呀。
难道是有内存没被释放,产生冲突?
因为,我刚刚屏蔽了给DBGridEh加Hint的代码:dbgrdhList.Hint := ‘XXXX’+#13+’YYYY’,因为同样会在“FreeLibrary( DllHandle ) ”报错。
不知道站长可以查到这是哪里有问题吗?
to 欧科:
将 Ehlib 集成到 DLL 里面我没有试过,我会测试一下,你也可以在 Delphibbs 上发贴看看别人有没有遇到类似情况的解决方案。
[...] 在发布了最新的 EhLib 4.2.12 中文汉化版以后,在盒子的评论区有人问安装的问题,其实在以前发布 EhLib 3.4、3.6、4.1 汉化修改版时,EhLib 的安装也是评论区问得最多的问题。 [...]
[...] PS:EhLib 4.2 已汉化:EhLib 4.2.12 中文汉化版(OneFly.org 修改版)发布 [...]
一开始装了下蛮好的.后来在d2007下安装后运行原来的程序居然在左上角的一个按钮菜单”自定义可见列,剪切,复制..”打开来是乱码?
请问搂主这是怎么回事?
@网络新秀:
你将 GirdEh 的字体设置为宋体试试。
今天试了几次发现正常情况下都可以显示好的,但把工程选项中的”Build with runtime Packages”打勾,然后在下面把Ehlib110的dcp加入,编译后就会出现乱码了?请问这种情况怎么解决?
想跟你请教一个ehlib的效果,网上问了很多人都不会啊。
能给我写邮件吗?
网络新秀的问题我也遇到了,重新汉化一下,把EhLibConsts.pas里面的常量声明改成cons就解决了
留言评论