说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

怎样在TDataset中汉英混用-Delphi资料

HTML文档下载 WORD文档下载 PDF文档下载
怎样在TDataset中汉英混用-Delphi资料

我们知道,在 TDataset 控件中,字段名是可以用中文的,不过在实际编程时往往中文字段不比英文字段显得方便,相反出错的几率到是很高的。而针对客户或是制成实用(商品化)的软件,没有了中文表达,没有了适合本国国情特色 的界面,该软件又是不成功的。如果 TDataSet 能提供这样一种转换功能,即内部是英文字段,而呈现给用户的是中文界面,不仅查找、搜索对用户来说容易、简单而且大大简化了开发者的编程难度,那么这样的属性(功能)应该是大受欢迎的。

实现这样的转换可以有好几种方法。

一种是静态转换。所谓静态,即是在设计字段或制作表头时,修改其相关Lebel 或 DisplayLabel。无论该字段是否引用或参照别的字段,一旦形成可执行的组件对象,这中形式也就随之固定下来。到了实际运行时,这时的形式也可以满足一般的需求。但是这种形式不具备伸缩性,也不具备可扩充性。

另一种是动态修改。我们从 TTable 控件得知,Fields 属性是该 Table 的字段属性,而其每一字段的 DisplayLabel 属性是在运行时可以改动的。利用这一点,我门可以制作一个通用的作用于 TDataSet 的控件,使其具有数据感知功能,在数据库加载时替我们做这个动态转换。至于控件对象选用 TDataset 而不选用 Table(TQuery)是出于移植性的考虑。

下面说一说其工作原理。

当一 Delphi 的执行程序加载到内存当中时,它首先是完成各成员对象的初始化即完成 Load 事件

然后才根据需要执行各组件的 Create

对于继承自 TDataSet的TTable、TQuery 等也不例外。我们关心的是 Form 的 Close事件和 TTDataSet 的 Open 和 Close 事件,当我们连结(HOOK)到这些对象的Notify事件,也就具备了被事件驱动(唤醒)的功能。SetEnevts 和 RestoreEvents 这两个过程是起到在Load(装载)时设置主单元 Form和 TDataSet 的OPen和Close 事件,在关闭(主单元或数据库)时,恢复其原来的事件。GetForm 为获取主单元的窗体的过程。IniFileName 为保存有字段中英文对照表的 INI 文件。

其格式如下:

[DEFAULT] ; 设置为缺省库

RKSJ=入库时间 ;字段名 RKSJ 中文: 入库时间

DJ=单价 ;字段名 DJ 中文:单价

YS=颜色 ;字段名 YS 中文:颜色

BZ=备注 ;字段名 BZ 中文:备注

[DEFAULT_SIZE] ;缺省库字段长度

RKSJ=12 ;字段 RKSJ 显示长度为 12

DJ=8 ;字段 DJ 显示长度为 8

YS=10 ;字段 YS 显示长度为 10

BZ=40 ;字段 BZ 显示长度为 40

IniSection 指定该库(TTable

TQuery) 位于 IniFileName 的哪一区。我们看到在 Load 这个重载过程中,有一个Loading 的变量,它是为了防止在构建Form或DataMoudle时加载了SetEvents

而我们的目的是在运行时设置,而不是在 Delphi的集成环境里进行 Form 的设计时。在 Save 的过程中,IniFileName 的存取位置在该执行程序的目录下,Save 过程分为两部分进行。

当用户指定了IniSection 时,对于本 FDataSet 的字段都将放在指定的 IniSection 区中, 期间对以前的任何数据不作保留。

当用户没有指定 Inisection 时,FDataSet 的字段都将放在 Default(缺省)区中,此时对保存的 FDataSet 字段做进一步的更新处理。

微软、思科、Google、Facebook等联合推出CII 狙击“Heartbleed” 这是个神奇的国度:细数五大印度裔IT牛人CEO Atmel CMO Sander Arts眼中的创客运动 Unity“三巨头”:全心全意为开发者服务 全球移动广告现状报告:哪种平台、应用最赚钱? 《近匠》Smart Wallit,钱包找不到了?给它“打个电话”吧 Mozilla新CTO:JavaScript、 Firefox OS专家Andreas Gal 李彦宏发布百度大数据引擎,及与谷歌、亚马逊等类似项目对比 大数据领域,实时打击欺诈犯罪的4个战场 一周消息树:谷歌Project Ara,将开启下一个智能手机时代 数据恢复服务商的6个最佳实践 【走近讲师】谭晓生:魔高一尺道高一丈,360基于大数据的网络攻击检测 一周热点:摩尔定律让位于贝索斯定律 阿里巴巴集团CTO王坚确认出席第六届中国云计算大会 【走近讲师】青云甘泉:混合云的构建及其对企业的帮助 RadiumOne创始人兼CEO因家暴被公司解雇 3D打印狂潮:可检测皮肤疾病的低价手机显微镜 浅谈导航设计,开发者必备的十大实用技巧 【云先锋 41】上海越诚:基于云服务的建站类iService软件超市 董西成:Hadoop将在高速发展和完善中扩大优势! 【走近讲师】 华云数据郁珉:公有云市场八仙过海 价格不是唯一标准! Facebook、Twitter、Google移动广告之争 开发者的黄金时代=运维人员的恶梦? 研发团队平稳度过“从小到大”并非易事 诺基亚品牌手机不久将消失 Stephen Elop回应不是木马 看七家科技公司Logo的最初模样 移动UI框架Fries:私人定制最Sexy的用户界面 必须Mark!最佳HTML5应用开发工具推荐 百度技术开放日感悟:看百度如何获取大数据时代的“船票” 谷歌亚马逊微软的烧钱游戏 拉手网CTO官冲:团购网在大数据应用上的探索 过节了!谨以些分献给坚守在灌水第一线的朋友们~(三) 未来的软件架构和技术 ▁▂▃▄▅学ASP一个月了,现在学SQL SERVER,散分100,只为交友!▅▄▃▂▁ 大家好 ! 中秋快乐 顺便提个问题 ? 在线等....顶也给分拉...Explorer执行了非法操作该窗口即将关闭? 过节了!谨以些分献给坚守在灌水第一线的朋友们~(四) 过节了!谨以些分献给坚守在灌水第一线的朋友们~(五) excel中数据透视表? 了解:今年高程考试有没有新增内容,因为去年就新增了CMM、C++、OA办公自动化软件开发等知识,事先也没有通知各位考生。 绝对好文---------------人力资源“总奸”的自白-------ZT 中秋检举 一个恶意网站! 用PHP上传文件到LINUX服务器,结果文件用FTP软件删不掉 有做网格控件经验的请进 请教一个数据库的小问题 各位高手帮帮我! 高手来帮忙!!! 菜鸟提问:怎样从HBITMAP获得BMP的尺寸?(SDK) 请帮忙。 请问一个关于photoshop的问题,多谢指教100分 vb excel 关于MFC多文档在何处放置自已的初始化文档的代码? 今年又是一个人过中秋,终于想找个GF了! 电影画面倒置是怎么回事? 如何将pbyte指向的byte数据传递给byte数组或char等 送分 为中秋节还工作在自己岗位上的朋友散分! 送分 cgi---這裡有多少個寫法?? 送分 gcc编译好的程序怎么运行阿? 关于多文档的问题:如何固定视窗大小? 替换字符串 初学VC的困惑——什么是标准C?? 一个小数,如何确定小数点的位数? 菜单乱码,求救! 怎样调用delphi编的DLL中的函数 关于XP操作系统中的imail 服务器的配置问题 請問有多少個寫法?????在线等待!急啊! to 思归 ,VIEWSATE的那个问题,无人回答,我贴出代码了,你看看, substring(indexA, indexB) 的官方解释不明白 请教大师两个问题 卷积是什么意思?请介绍一下这方面的资料? 用户界面与开发环境怎样脱离????? ASE 12.5.0 FOR NT安装问题。。。 没分了,但还得提这个问题? ComboBox问题? combobox问题? 散分 发现QQ一个惊人的大秘密!!!! 请教yahoo上 点一下“セキュア(SSL)”怎么会使网站可以进行ssl加密??怎么做到的? 中秋节的晚上还在SQL版上晃的朋友进来 麻雀理工大学是什么意思 成都理工大学3加1是什么意思 兰州理工大学普通物理B什么意思 天长地久用数字代替是什么 有其他类似"九代表天长地久"的数字意思吗? 两口子,天长地久.算三个数字 什么样的苇絮?怎样飞起来? c语言中,语句之间用什么分隔?一行代码没写完,应该如何接下去写? 几道英语小题!You— ( look) tired todayFive and three—(make)eight用括号内单词按正确的形式填空 a^2(X一y)+16(y一X) 若集合A={y|y=x^3,-1≤x 世界最高人找到真爱将结婚 两人相差7以总理:伊朗有能力在数周内提炼武器级塞尔维亚为铁托遗孀举行国葬 2万多人美国采花大盗将获释搬到居民区 遭民众日本将启用自卫队军官任国家安全保障局昆西 琼斯向杰克逊信托人索赔6080潘基文强烈谴责刚果(金)反政府武装袭河南济源回应7公里6个“收费站”称非媒体称养老金并轨已无悬念 执行路线图阿根廷国会选举受瞩目 现总统或丧失部加拿大机场现可疑包裹 警方搜查机场附有奖征文饭局结束分别酒驾回家 双双出车祸医院知名高校龙舟赛七月开赛面对经济衰退,安倍底牌所剩无几不少数学题不用计算器答案得出更快“定向降准”不是全面宽松 释放资金量电梯失控一“飞”冲顶威龙葡萄酒业绩难看 “有机”卖点OR“白净书生”边摇风谷机边上物理课崇明巴士启动夏令营运模式自主品牌份额“九连降” 对消费升级万法之书轩辕剑纪铁流无声万族谱天龙大世界隋唐玄霸醉美江山全能炼器士三刃灭亡传我的女友是武神大连广播电视塔旅游水上乐园旅游菩提岛旅游锡崖沟旅游珠海情侣路海滨浴场旅游于谦祠旅游奉节天坑地缝旅游茅岩河旅游苦竹河旅游新丰江大坝旅游龟峰塔旅游
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘