Delphi 控件开发浅入深出(一)有人说过“不会开发控件的 Delphi 程序员不是真正的程序员〞
Delphi 正是由于高度的可扩展性和大量的第三方控件的支持才能吸引无数程序员挑剔的目光
即使是由于工作需要使用其他开发工具的开发者也常常怀念和 Delphi 度过的日日夜夜
接触 Delphi 已经一年多了,从当初对着 Delphi 组件面板上上百个控件不知所措,到现在已经可以根据需要开发一些有一定难度的控件,其中走过的路是十分艰辛的,所以特此写下这篇文章,将自己的经验留给后来者,也算是献给“同门师弟〞的一份厚礼吧
需要说明的一点是:在写这篇文章之前我假设读者已经对面对对象的根本知识有一定的了解,所以对于文章中面对对象相关的概念将不再展开讲述
一、牛刀小试-TURLLabel 控件我们从一个能够添加超的标签控件开始我们的控件开发之旅吧
既然是 Label 我们就从 Tlabel 派生这个控件吧(其实从 TcustomLabel 派生最好,不过出于简单的目的我们这里先从 Tlabel 派生)
1、选择“File〞->“New〞->“Component〞,将弹出如下的对话框:在 Ancestor type 中选择 Tlabel,ClassName 中填入 TURLLabel(名字可以任意取,但是要以 T开头,否那么的话会出现注册控件时候的问题)
这里 Ancestor type 代表控件的基类,TURLLabel 代表控件的名称
2、超的视觉效果是带下划线的文字,所以我们覆盖父类的构造函数,在构造函数里修改控件的字体属性
constructor TUrlLabel
Create(AOwner:TComponent);begin inherited Create(AOwner); Cursor:=crHandPoint; Font
Style:= [fsUnderline];