通过实例看VCL组件开发全过程(三)[2]

[入库:2005年8月18日] [更新:2007年3月25日]

本文简介:选择自 hkbarton 的 blog

n lang=en-us>interface部分加入一个编译器开关:{$r clockdcr.dcr}然后重新编译更新组件(还记得怎么更新吗?),这时的组件图标已经变成我们刚才做的位图了!

接下来我们将为我们开发的组件的属性进行分类并介绍一个组件开发中重要的特性:属性类别。

为了让我们组件的一些和时钟有关的属性注册成一个新的类别把它们和label的属性分开开来,让组件用户能够更容易的发现组件的新特性,我们继承了属性类别的基类tpropertycategory(在delphi5中这需要引用单元dsgnintf,不过应该特别注意在delphi7中已经没有了这个基类,也没有这个单元文件,注册新的属性类别可以通过直接使用registerpropertyincategory这种简单的办法完成,在下面的代码中会在相应的地方同时给出两种方法并说明他们的不同。)并覆盖它的两个类方法,最后在register过程中用registerpropertyincategory(在delphi5中在dsgnintf单元,在delphi7中在designintf单元,注意:delphi的一些单元并没有被安装,包括我们这里指出的这两个单元和将要在后文中指出的单元,这些单元属于delphiopen tools api是用来方便我们,特别是组件开发者用来扩展delphi。如果你的delphi没有这些单元,请将delphi安装目录下的source文件夹里toolsapi文件夹中的pas文件拷贝到lib目录下,在你第一个需要用到这些单元的程序编译时delphi会自动编译这些单元)方法注册属性类别。我们把以下的部分代码补充进我们开发的组件的原代码中:

本文关键:VCL,组件开发
  相关方案
Google
 

本站最佳浏览方式为 分辨率 1024x768 IE 6.0(或更高版本的 IE浏览器)

go top