在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
工程(Project)可以说是Delphi的生命。不可能创建一个没有工程的程序。利用工程可以把全部工作组合到一起,从而创建出可以执行的应用程序。 一般来说,每个工程都需要管理。也许要增加一个新的单元到工程中,或是从工程中删除一个单元;也许需要增加另一种类型的文件(比如二进制资源文件)到工程中。增加和删除单元及其他的工程文件,都需要通过Project Manager来进行的。 工程组(Project Groups)工程是一个文件集合,这些文件一起起作用即可创建独立的可执行文件或DLL。这就是Delphi IDE涉及到的工程的定义。在现实中,有各种类型的工程,比如一项要完成的工作也可称为工程。 大型工程可以包括一个或多个可执行文件,以及若干个动态链接库(DLLs),由于有些工程由多个(不是单个)可执行程序组成,Delphi允许将若干个工程放在一起组成一个组,从而把组中全部工程当作一个单独的整体来处理。这个整体就叫做工程组。 1、为什么要使用工程组(Why Use Project Groups?)大家可能会问:工程组有哪些优点?工程组的优点如下:
创建单个可执行文件的工程不需要工程组。一个单个工程不能看作一个组,对么?在单个工程情况下,工程组的概念就不合适了。 但是,设想一下:一个程序包含一个EXE文件和单个DLL,DLL和EXE是联系在一起的。当修改DLL时,一般都希望EXE就在旁边,可以立即测试DLL修改的效果。在这种情况下,使用工程组就会十分有意义,因为EXE和DLL总是在一起的。 可以创建一个包含该EXE和DLL的工程组。当要修改应用程序或DLL时,可打开该工程组(而不是单个工程)。打开工程组后,EXE工程和DLL工程会同时显示出来。可用Code Editor修改DLL或EXE,并在它们之间来回切换。如下图,就是Project Manager窗口,其中打开了这样一个工程组。 使用工程组的另一个原因是:可将相关工程组织在一起。初听起来,这句话好像意义不大,下面来解释。比如一个公司开了一套串行通信组件集合,其中的组件分为三大类:基本串行通信、传真和TAPI,每一大类都包含很多样本程序。 在这种情况下,可以为传真类的程序创建一个工程组,为TAPI类中的程序创建一个工程组,为基本串行通信类中的程序创建一个工程组。这样,用户打开TAPI工程组,将全部的TAPI样本程序都置于其中。整个工程组可以同时编译、链接,因而可以节省时间并简化打开、编译链接每个工程的操作。这里,各个工程不像EXE和DLL那样一起工作,但这些工程是相关的,因而工程组的概念是有意义的。 2、活动的工程(The Active Project)任何工程组中总有一个活动的工程,活动工程以粗体字显示在Project Manager中。如上面的图中,活动的工程为TestDLL。 当从Delphi主菜单中选取Compile或Build菜单项时,活动工程就会被编译、链接。 每当一个工程被设置成活动工程时,这两个菜单项都会发生改变。例如,如果活动工程的名为Project1,则两个菜单项的名就是【Compile Project1】和【Build Project1】;如果把一个名叫PictView的工程设置为活动工程,则这两个菜单项名就是【Compile PictView】和【Build PictView】。 通过Delphi主菜单或Delphi工具栏来增加元素,比如新增窗体或单元,都会自动添加到当前活动工程中。 把一个工程设置为活动工程的方法有多种。
工程管理窗口(The Project Manager Window)工程管理器是所有工程和工程组的中央控制器。用工程管理器可增加文件到工程中、删除工程中的文件、查看单元或窗体、添加工程到工程组、改变工程的排列次序等等。可选择主菜单上【View | Project Manager】菜单项或按Ctrl + Alt + F11来显示工程管理器。 Project Manager窗口含有一个树形列表控件,它最多显示四层,这四层是:
自然地,在任何树列表控件(tree view control)中单个节点都可以展开或收缩。Project Manager节点都带有图标来指示该节点是否包含工程、单个文件、窗体或窗体/单元。如下图:
1、工程管理器快捷菜单(The Project Manager Context Menus)工程管理器的大多数工作都是通过工程管理器快捷菜单来进行的。Project Manager有四个独立的快捷菜单,下面分别进行介绍。 (1)工程组快捷菜单(The Project Group Context Menu)用鼠标右键点击位于Project Manager树顶点的工程组节点,会显示出工程组的快捷菜单。如下图:
(2)工程快捷菜单(The Project Context Menu)用鼠标右键点击Project Manager中的工程节点,就会显示出工程快捷菜单。如下图:
(3)单元快捷菜单(The Unit Context Menu)用鼠标右键点击Project Manager中的单元节点时,会显出单元快捷菜单。如下图:
(4)文件快捷菜单(The File Context Menu)用鼠标右键点击除工程组节点、工程节点、单元节点外的节点(通常是.pas或.dfm文件)时,会显示文件快捷菜单。如下图: 这个快捷菜单只有一个菜单项,【Open】菜单项把选择的节点显示在Code Editor或Form Designer中(由所选节点的类型决定是显示在Code Editor中还是Form Designer中)。 2、Project Manager工具栏和键盘命令(The Project Manager Toolbar and Keyboard Commands)除了Project Manager快捷菜单外,Project Manager有一个工具栏,使用这个工具栏可方便工程管理器的操作。Project Manager工具栏包含三个按钮:
键盘命令包括Delete键和Insert键。当按下Delete键,所选节点就会被删除。若选的是工程节点,则把该工程从工程组中删除;若选的是单元节点,则把单元从所属工程中删除。Insert键的功能与工程快捷菜单【Add to Project】功能一样。
创建并使用工程组(Creating and Using Project Groups)对于复杂工程,使用工程组时大有益处的,但是使用工程组不是强制的,没有必要每个工程都使用工程组。Project Manager有一个名为ProjectGroup1的缺省工程组,当不专门打开或创建工程组时,可使用这个工程组。不妨按以下步骤试试: (1)选择【File | Close All】菜单项关闭所有打开的工程或工程组。 (2)选择【File | New Application】创建一个新应用程序。 (3)选择【View | Project Manager】来显示Project Manager。如下图: ProjectGroup1工程组时一个临时工程组。当从主菜单选择【File | Save All】菜单项时,系统会提示保存工程,而不是保存保存工程组。若要保存该工程组,必须在Project Manager的工程组快捷菜单中使用【Save Project Group】或【Save Project Group As…】菜单项来保存它。 1、增加单元(Adding Units)要增加一个已存在的单元到工程中,只需要点击Project Manager工具栏上的Add按钮,或从Project Manager工程快捷菜单中选择【Add…】。 如果工程中有一个窗体的与一个单元同名,则不能把这个单元加到该工程中。 2、删除单元(Removing Units)使用Remove From Project选项可将文件从工程中删除。另外,也可选择要删除的单元,然后按键盘上Delete键。从工程中删除掉的文件并未从硬盘上删除,而只是将它们移除工程编译/链接过程。
点击工程快捷菜单中的【Remove File…】,将会显示出“Remove From Project”对话框,该对话框允许选择多个单元,因此可以同时删除多个单元文件。如下图: 3、查看单元或窗体(Viewing Units or Forms)要查看单元、窗体或其他文件,只需双击想要查看的窗体或单元节点。还可以从Project Manager快捷菜单中选择【Open】菜单项,窗体或单元就会显示在Form Designer或Code Editor中(根据所选节点的类型)。 建立工程或工程组(Building Projects or Project Groups)要编译、链接某个工程,可按下列方法之一进行:
要编译、链接整个工程组,从Delphi主菜单中选择【Project | Build All Projects】,工程组的全部工程都会被编译、链接,顺序是自上而下从工程组的第一个工程到最后一个工程。 |
2023-10-27
2022-08-15
2022-08-17
2022-09-23
2022-08-13
请发表评论