3.2Delphi应用程序项目和项目管理器
Delphi是用项目管理器对应用程序的项目进行管理的。
3.2.1项目
Delphi通过项目来管理应用程序文件。
项目是一个Delphi应用程序相关文件的集合。
一个Delphi应用程序可以只包含一个项目,也可以包含几个项目,这几个项目组成一个项目组。
3.2.2项目的组成
Delphi应用程序设计完以后,打开保存程序文件的文件夹,可以看到有许多个文件,这些文件组成一个应用程序项目。
这些文件有的是在程序设计阶段产生的,有的是在程序编译阶段产生的,有的是由用户保存时命名的,有的是由系统根据用户的命名自动生成的。
组成应用程序项目的文件不少,但与我们经常直接打交道的只有项目文件、单元文件和窗体文件。
1.项目文件
项目文件是以.dpr为扩展名的文件,是Delphi应用程序的主程序,每个项目只有一个项目文件,它列出了整个应用程序包含的单元,完成对应用程序的初始化并启动应用程序。
项目文件是由开发环境自动创建与维护的,用户一般不要修改它。
项目文件是一个Pascal源代码文件,执行【Project】→【ViewSource】菜单命令,可在代码编辑窗口中增加Project1选项卡并显示项目文件,如图3-9所示。
第一行,关键字program指明该项目的名称是Project1(保存时,选择的默认值)。
uses语句,列出了该项目所使用的单元。是编译指令,表示将链接的所有的资源文件(.res)。资源文件是二进制文件,存储了程序所需要的如图标、位图、字符串等资源。该文件由Delphi自动管理。
Begin与eng之间为可执行代码段。其中Application为应用程序定义的一个对象,Application.Initialize语句初始化这个对象,Application.CreateForm(TForm1,Form1)语句是创建一个应用程序的窗体对象Form1,Application.Run语句是运行应用程序。
2.单元文件
单元文件是以.pas为扩展名的文件,是用户在代码编辑器中编写的源代码文件。
单元文件有两种:有窗体文件和无窗体文件。
每一个窗体都对应一个有窗体单元文件,当用户用【File】→【New】→【Form】菜单命令在应用程序中创建一个新的窗体时,系统都会自动生成对应的单元文件,窗体事件的处理代码都保存在这个单元文件中,前面简单程序实例中,我们在代码编辑窗口中编写的代码文件就是有窗体的单元文件。
无窗体单元文件是独立的源代码文件。用【File】→【New】→【Unit】菜单命令,就可以创建应用程序无窗体单元文件。
第一行,单元定义部分,指明单元名为Unit1,单元与其对应的单元文件同名。
关键字interface开始为接口定义部分,又包含以下几个部分:
关键字uses后面列出了本单元文件在编译链接时要使用的单元文件;关键字type为类型定义部分,列出了窗体中使用的组件名和事件处理过程名;关键字var为变量声明部分,列出了单元文件中的全局变量。
关键字implementation后面为单元文件的实现部分,其中为窗体编译指令,关键字procedure及其后面的begin…end所包含的部分为用户定义的事件处理过程代码,也就是需要用户编写的部分,这些事件处理过程的数量和名称与类型定义部分的说明一致。
单元文件中最后一个end为单元文件的结束标志。
3.窗体文件
窗体文件是以.dfm为扩展名的二进制格式文件。
每个窗体都有一个相应的窗体文件。窗体文件描述了窗体及窗体中的组件的属性。设置窗体及窗体中组件的属性,除了Name属性之外,其他属性的属性值在窗体对应的单元文件中反映不出来(这在前面的单元文件中可以看到),而由窗体对应的窗体文件所保存。就是说,窗体及窗体中的组件的属性,有两种表现形式,一是窗体形式,即以直观的形式反映在窗体窗口中;二是文件形式,反映在窗体文件中。窗体文件与同一个项目的项目文件、单元文件保存同一个目录下,由系统自动保存。
平时窗体文件不在集成开发环境中显示出来。用鼠标右键单击窗体窗口,弹出快捷菜单,选择【ViewasText】菜单命令,代码编辑器中显示当前窗体对应的窗体文件,如图3-10所示。
以下就是前面程序实例的窗体文件。
可以看到,文件中每一对“object…end”之间保存了一个对象(包括窗体和窗体中的组件)的属性值和事件及事件处理过程名,在窗体中对对象属性及事件处理过程的设置、修改都会反映在窗体文件中。
3.2.3Delphi的项目管理
如前所述,Delphi是用项目管理器对项目进行管理的。
1.Delphi的项目管理器
执行【View】→【ProjectManager】菜单命令,打开项目管理器窗口,如图3-11所示。
项目管理器窗口由标题栏、项目选择列表、工具栏和项目显示窗口组成。
标题栏:显示项目管理器的英文名称“ProjectManager”。
项目选择列表:通过一个下拉列表框选择要管理的项目。
工具栏:包含【New】、【Remove】、【Activate】3个命令按钮。
项目显示窗口:以树形结构显示当前项目所在项目组的组成。
2.向项目组中添加项目
用鼠标右键单击(以下皆简称为“右击”)【ProjectGroup1】项,弹出快捷式菜单,如图3-12所示,可执行【AddNewProject】或【AddExistingProject】菜单命令,向项目组添加一个新建项目或添加一个已存在的项目。
若执行【AddNewProject】菜单命令,则打开【NewItems】对话框,如图3-13所示,选择【Application】图标,单击【OK】按钮,一个新建项目就可添加到项目组中;若执行【AddExistingProject】菜单命令,则打开【OpenProject】对话框,如图3-14所示,选择要添加的项目,单击【打开】按钮,一个已存在的项目就会添加到项目组中。
添加了项目的项目管理器窗口如图3-15所示。
3.从项目组中删除项目
右击要删除的项目,弹出如图3-16所示的快捷式菜单,执行【RemoveProject】菜单命令,选择的项目被删除。
4.给项目添加文件
右击要添加文件的项目,弹出如图3-16所示的快捷式菜单,执行【Add】菜单命令,打开【AddtoProject】对话框,如图3-17所示,选择要添加的单元文件,单击【打开】按钮,一个已存在的单元文件就会添加到项目中。如果该单元文件是一个有窗体单元文件,那么该单元文件相应的窗体也一并添加到项目中。
5.从项目中删除文件
右击要删除文件的项目,弹出如图3-16所示的快捷式菜单,执行【RemoveFile】菜单命令,打开【RemoveFromProject】对话框,如图3-18所示,对话框列出了当前项目包含的所有单元文件,从中选择要删除的单元文件,单击【OK】按钮,系统弹出如图3-19所示的信息框要求确认,单击【Yes】按钮,选择的文件被删除。
习题3
1.设计一个Delphi应用程序要经过哪几个步骤?自己动手把本章中的程序简例操作一遍,以初步掌握Delphi应用程序的设计步骤。
2.什么是项目?项目主要包含哪几个文件?各有什么用途?
3.如何给项目组添加项目、删除项目?如何给项目添加文件、删除文件?