二、控件开发纵览
通过开发上边这个控件,我们已经对Delphi控件开发有了基本的认识。下面我们将系统的讲述一下控件开发的知识。
制作控件第一件事就是选择适当的 Delphi对象类型作为父对象,以派生新的对象。子对象可以继承父对象的全部非 private部件,但不能摆脱不需要的部件。因此,所选父对象应尽可能多地包含子对象所需的属性、事件和方法,但不应包含子对象不需要的东西。Delphi必须从Tcomponent或Tcomponent的子类派生。TComponent是所有 Delphi控件的基点,但若直接从 TComponent 派生新控件,很多东西就需要自己从头做起。一般只有非可视控件才直接从 TComponent派生。 Delphi提供了若干专门用于制作控件(可视控件)的对象类型,都是从 TControl和 TWinControl派生而来。TControl的子类型用于非窗口式控件, TWinControl的子类型则用于窗口式控件。除非特殊需要,一般不直接从 TControl和TWinControl派生新控件,而是从其子类型派生。这样可以充分利用原有的属性、事件和方法,减少很多工作量。在这些控件类型中,非通用的属性、事件和方法都声明为 protected。这样可以禁止控件用户访问,又能被子类型继承和修改。在新控件中,可以简单地把继承来的属性和事件重新声明为 published,使控件用户能在设计期通过对象编辑窗口访问,也可以进而修改属性的默认值和读写方式,或是重载( override)事件处理子过程和其他控件方法,以修改其中的程序代码。重声明可以放宽访问权限,但不能相反,例如,不可能把 published属性重声明为 private或 protected。 Delphi控件也是Delphi的类,所有的控件都有特定的结构。一般控件包括三大组成部分:属性、方法和事件,下面先介绍初学控件开发的最难懂的属性部分,其他部分我们将在以后章节为大家介绍。属性主要部分就是属性的读写方法(或读写字段)。前面的例子用的是读写字段,也就是对属性的读写都通过对字段的读写来完成。下面为大家讲解一下读写方法的使用方法:TmyComponent = class(TComponent)Private Fcount: Integer; Procedure SetCount(Avalue: Integer);Pulbished Property Count: Integer read Fcount write SetCount;End;这个例子中当执行MyComponent1.Count := 1;这样的代码时,将会导致SetCount方法执行,并且参数Avalue被指定为1;当执行 I := MyComponent1.Count;方法时,会将 Fcount的值返回给I。属性的声明语法允许属性声明的Read和Write部分用访问方法取代对象私有数据域。属性的读方法是不带参数的函数,返回同属性相同类型的值。通常读方法以Get开头。属性的写方法总是带一个参数的过程。写方法常常以Set开头。思考题:1、 如何为控件添加属性?2、 从TwinControl类派生的控件的特点是什么?
分享到:
相关推荐
《Delphi控件开发浅入深出》是一本专为Delphi初学者和进阶者设计的教程,旨在深入解析Delphi控件的开发过程,帮助读者掌握这一强大的Windows应用程序开发工具。Delphi以其高效的VCL(Visual Component Library)框架...
Delphi 控件开发浅入深出 Delphi 控件开发浅入深出是 Delphi 程序员的必读书籍之一。 Delphi 的高度可扩展性和大量的第三方控件支持是吸引无数程序员挑剔的目光的根本原因。掌握 Delphi 控件开发是每个 Delphi ...
delphi控件开发。需要安装超星阅览器查看。
在《Delphi控件开发浅入深出》一书中,作者强调了Delphi强大的可扩展性以及丰富的第三方控件支持,这对于开发者来说是非常重要的特性。特别是对于那些希望深入学习Delphi编程的人来说,掌握控件开发技巧是非常有价值...
《Delphi控件使用大全》是一本专注于Delphi编程中控件应用的综合教程,旨在帮助开发者通过实例学习和理解...无论是初学者还是经验丰富的开发者,都能从中获益匪浅,加深对Delphi控件使用的掌握,提升软件开发效率。
2、对开发人员而言,通过开发,可以对Delphi的系统结构有更深的认识,并从中学到大量的经验和技巧,而多人协作开发的经验亦是非常有用。更重要的是,我们将以自己的实际行动证明,中国的Delphi程序员并不比外国的差...
这本书深入浅出地介绍了如何利用Delphi 7强大的数据库支持功能,进行高效且灵活的数据管理应用程序开发。Delphi 7是Borland公司推出的一款集成开发环境(IDE),以其高效的编译器和组件化编程而著名,尤其在数据库...
在 Delphi 开发环境中,为组件添加立体阴影和投影效果是一项常见的美化任务,这可以使用户界面看起来更加丰富和专业。Delphi 提供了一些内置的方法来实现这样的视觉效果,虽然可能不如现代图形库那样细腻,但对于...
总之,《Delphi组件开发指南》深入浅出地介绍了组件开发的各个方面,是Delphi程序员提升技能、创建高效组件的宝贵资源。通过学习和实践,开发者可以更好地掌握Delphi环境下的组件设计和实现,从而提高软件开发的效率...
- **0043**:对象的深复制与浅复制。 - **0044**:事件驱动编程模式的应用。 - **2.3**:指针与内存管理。 - **0045**:指针的运算与操作技巧。 - **0046**:通过指针访问内存。 - **0047**:动态内存分配与...
总的来说,《D10 Delphi 10.1 Berlin FireDAC 数据库开发手册》是一份全面的参考资料,对于想要精通Delphi数据库开发的程序员来说,无论是初学者还是有经验的开发者,都能从中获益匪浅。通过深入学习并结合源代码...
本书通过深入浅出的方式,讲解了DbExpress的核心概念、架构以及实际应用技巧。 DbExpress的核心在于其组件化的设计,它由一系列组件组成,包括连接管理器(TSqlConnection)、SQL语句执行器(TSQLQuery)、数据集...
### Delphi简明教程知识点概览 #### 一、Delphi概述与发展历程 ...本书强调理论与实践相结合,通过丰富的示例和深入浅出的解释,帮助读者迅速掌握Delphi开发的核心技术,进而在Windows应用程序开发领域取得显著进展。
通过学习《Delphi 深入核心VCL架构剖析》,开发者不仅可以提升Delphi编程技能,还能对Windows应用程序的开发有更深的理解,为构建更复杂、更高效的软件奠定坚实的基础。书中提供的源代码分析将有助于实践和巩固理论...
总的来说,《Delphi深度历险》附书源码为 Delphi 学习者提供了一条深入理解和实践 Delphi 开发的途径,无论你是初学者还是经验丰富的开发者,都能从中获益匪浅。通过探索这些源代码,你将能够巩固理论知识,提升实际...
《Active控件部件指南》是一本专为VB(Visual Basic)爱好者设计的入门参考资料,它深入浅出地介绍了如何在VB环境中使用Active控件进行软件开发。Active控件是Microsoft在其Visual Studio系列中引入的一种重要组件,...
《Delphi精要》这本书是面向程序员的...总之,《Delphi精要》这本书深入浅出地介绍了Delphi编程的各项关键点,通过源代码的学习,读者可以全面掌握Delphi的开发技能,无论是初学者还是经验丰富的开发者,都能从中受益。
《Delphi7组件编写者指南》是一本专为Delphi开发者设计的实用教程,它深入浅出地介绍了如何在Delphi 7环境下创建自定义组件。Delphi作为一款强大的对象 Pascal 开发工具,其组件化编程是其核心优势之一。通过编写...