创建自己的Dephi构件.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
创建自己的Dephi构件 可视化编程工具Dephi以强大的功能,众多的优越特性,深受广大使用者的喜爱,但如何编写自己的Dephi构件对许多使用者来说比较陌生,因此,有必要掌握构件的创建方法。 一. 构件创建的步骤: 1. 使用New? Component? 对话框开始创建 选择File|New弹出Object? Reposity,双击Object? Reposity的Component图标,显示New? Component对话框开始创建。 2. 为构件增加属性 ??????? Dephi中用关键字Property声明属性字段,属性有read和 write可选从句,其语法格式为: ?????????????? Property?? MyProperty? :Atype ?????????????? Read? GetProperty? write? SetProperty; ?????????????? GetProperty? SetProperty分别为读写属性过程。 3. 为构件增加方法 ??????? 在Dephi构件创建中增加新的方法,需在 interface区的 private 、 protected? 以 及public中的任一部分描述函数原型,若方法可能在以后被重载,则应在尾部加上 virtual 或dynamic关键字,然后在 implementation区定义方法的具体实现代码。 4. 为构件增加事件 ???????? 在Dephi中,事件也是使用关键字Property来声明。其语法格式为:? Property OnNewEvent? :Aevent Type? read? FonNewEvent write FonNewEvent; 声明事件后往往要将windows的消息传递与事件联系起来才能真正实现事件驱动,因此,我们还要增加一种新的特殊类型的动态的“消息管理”方法,其语法格式为: Procedure? MsgPro(var Msg? :Tmessage) ;message AmsgIndex; ??????? 其中,关键字Message 声明此为一个消息管理方法。 AmsgIndex 为一整数常数,作 windows 消息动态索引,当索引为 AmsgIndex 的消息传递至应用程序时便会执行 MsgPro过程。 5. 测试构件 ??????? 测试构件,确信构件是按设计编译和起作用的。这是构件开发中非常关键的一步,为测试构件,要先写一个用作测试的应用程序,由于不能拉出构件选项板窗口上的构件,还必须人工创建一个构件。 6. 将新构件添加到构件选项板 ??????? 当构件正常工作并令人感到满意后,可添加到构件选项板上,从主菜单选择Component | Install Component显示一个Install Component 对话框,该对话框能够添加构件到程序包。 二. 构件创建实例 ??????? 下面要开发的新构TnewLabel 是从TLabel 类继承来的,它与 TLabel 具有相似的焦点感应能力:当鼠标移到Tlabel 上时,文字颜色发生改变;当鼠标离开时,颜色恢复。它还将增加一个EnterTextColor属性以及 OnMouseLeave和OnMouseLeave事件。属性 EnterTextColor中可以输入鼠标进入构件时文字的颜色,? OnMouseEnter、 OnMouseLeave事件中则可输入程序员自己的代码来指定鼠标进入和离开构件时的动作。 1. 选中Component菜单项中的 New? Component选项,在 Ancestor Type 框填入Tlabel,在 Class Name框中填入 TnewLabel ,在 Palette Page框中填入? Samples,在 Unit File Name 框中填入 NewCom.pas ,然后单击按钮 Create Unit就进入到代码编辑状态。 2. 使用 Tools菜单中Image Editor来创建编辑文件NewCom.dcr,为?? TnewLabel类建立位图。 3. 增加新属性EnterTextColor ,并为读写属性增加私有方法 SetEnterTextColor和私有变 量 FenterTextColor。 加入如下的代码: Private ??? FenterTextColor : Tcolor; ??? SetEnterTextColor(Acolor :Tcolor); Published Property? EnterTextColor : Tcolor Read? FenterTextColor? Write? SetEnterTextColor(Acolor); … Implemen

文档评论(0)

leirenzhanshi + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档