组件在Delphi程序的开发中是最显眼的角色。大家知道,在编写程序时一般都开始于在组件面板上选择组件并定义组件间的相互作用。但也有一些组件不在组件面板上,例如Tform和Tapplication(典型的非可视组件)。组件是Tcomponents派生出来的子类,可以流的形式存放在DFM文件中,具有事件和Publish属性。
窗口组件类是窗口化的可视化组件类,在Delphi的类库中占有最大的份额。在实际编程中,窗口组件类的对象都有句柄,可以接受输入焦点和包含其它组件。
图形组件与窗口组件并列,是另一大类组件。图形组件不是基于窗口的,因而不能有窗口句柄,不能接受输入焦点和包含其它组件。从图8-43中可以看出,图形组件的基类是TgraphicControl,在实际编程中,它们必须寄生于它们的宿主——窗口组件类的对象,由它们的拥有者负责其显示,而且它们还能触发一些和鼠标活动相关的事件。图形控件最典型的例子是Tlabel和TspeedButton。由此可以看出图形组件的功能很弱,图形组件的用处何在呢?其实使用图形组件的最大好处在于节省资源,正是因为它们的功能较弱,所以使用的系统资源就要少。在一个应用程序中,如果能在不影响其功能的前提下合理大量地使用图形组件,将会大减少程序对系统资源的消耗。
非可视组件是与可视组件相并列的另一类组件,非可视组件在程序运行中是不可见的(除各种对话框组件之外,事实上有人认为对话框组件不能归入非可视组件,应该是另一种介于可视与非可视之间的组件)。
最后要说明一下,常说的控件实际上是一种组件。也就是说组件这个概念要大于控件,控件在内涵上包含于组件中。控件由Windows系列操作系统提出并使用,而组件是Borland和其它厂商在对Windows控件做了必要的扩展之后提出来的概念,它们是在不同时期由不同的厂商提出的概念。
§3.2 数据库组件介绍
用Delphi6开发数据库应用,重点是和各种数据库组件打交道,能和数据库挂钩的组件对象有5种,它们是:Session(数据库会话)、Database(数据库)、Dataset(数据集)、DataSource(数据源)、Data control(数据控制组件,也叫data-controls即数据感知组件)。其中前面4种统称为数据访问(Data Access)组件。这些组件的相互关系如图3-2所示。
ADO组件 Delphi6.0包含了可以用来访问Microsoft公司的ActiveX Data Objects(ADO)格式数据库的组件。ADO是Micrsoft公司关于各种类型数据的高等界面,后来逐渐演变成满足所有数据访问需要的完整解决办法。ADO的对象模型是所有数据访问接口对象模型中最简单的一种。Microsoft公司用来访问ADO数据的应用程序界面技术是OLE DB。OLE DB是一种底层编程接口,用来访问许多不同类型的数据源,其中包括消息、文件系统以及其他一些非传统的数据源。OLE DB是一个由Component Object Model(COM)接口组成的集合,用来隐藏创建数据访问服务过程中的细节。OLEDB提供了访问任何数据资源的方法,包括相互关联的数据库和相互不关联的数据库、Email和文件系统、文本和图形以及用户定义的数据对象。
Delphi的ADO组件无需依靠BDE而是使用ADO技术,提供了可以通过数据控制组件访问数据的新方法。唯一的要求是在使用ADO组件时必须运行ADO/OLE-DB。ADO组件的使用使得DELPHI在访问数据的类型和采用的技术方面都有了很大的突破。
数据模块设计窗口 数据模块设计窗口是用来设计和文护数据模块的。数据模块设计窗口中包含了所有以.DTI作为文件扩展名的Data Diagram文件的信息。DTI文件在编译时不起任何作用。
§3.3 SQL语言在Delphi中的应用
<< 上一页 [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] ... 下一页 >>