电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

Delphi自定义控件开发

Delphi自定义控件开发_第1页
1/33
Delphi自定义控件开发_第2页
2/33
Delphi自定义控件开发_第3页
3/33
Delp hi控件开发浅入深出(一) 有人说过“不会开发控件的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]; end;代码解释:(1 ) inherited Create(AOwner);这句的意思是执行父类的构造函数。我们制作控件的时候,如果覆盖了父类的构造函数,那么在新的构造函数中一定要首先调用父类的构造函数,否则会引起错误。这是很多初学控件开发的人常常遇到的问题。当您把自己开发的控件从面板上拖放到窗体时,如果跳出一个“Access Violent”的错误对话框的话,那么十有八九是因为您忘了调用父类的构造函数。 (2) Cursor:=crHandPoint;Font.Style:= [fsUnderline]; 这三句的意思是修改标签的视觉效果。Cursor:=crHandPoint;是设定当鼠标移动到控件上时鼠标的形状为“手型”;Font.Style:= [fs...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

Delphi自定义控件开发

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部