官术网_书友最值得收藏!

1.5 項目管理器

Delphi用項目(Project)來管理用戶開發的應用程序中的各個文件,有序的管理可以極大地提高應用程序開發的質量和速度。

大多數情況下,一個應用程序由一個項目構成。它也可以是包括多個項目的項目組,甚至可以由多個項目組構成。例如,創建一個有兩個項目的應用程序,其中一個用來創建應用程序所需的動態鏈接庫,而另一個則用來產生應用程序的可執行文件。

1.5.1 項目組成

Delphi為每個項目建立了相當數目的文件。在這些文件中,一部分是在設計階段產生的,如項目文件(.DPR)、單元文件(.PAS)和窗體文件(.DFM)等。還有一些則是在編譯階段產生的,如對象映射文件(.DSM)、編譯單元文件(.DCU)等。當然,項目中還包括一些非Delphi生成的文件,如位圖、圖標、鼠標指針等資源文件。

這些文件中的一部分要由用戶保存時命名,而另外相當一部分文件由Delphi自動產生,這些文件的命名主要取決于用戶為項目和窗體所取的名稱,以及Delphi及系統欲定義的文件擴展名。

這些文件構成了一個完整項目,但經常打交道的文件并不多,主要是項目文件(.DPR)、單元文件(.PAS)、窗體文件(.DFM)及一些資源文件。前面已經介紹了窗體文件,這里著重介紹一下單元文件和項目文件。

1.單元文件

單元文件是組成應用源代碼的主要部分。無論是窗體事件處理過程還是單獨的源代碼,都保存在單元文件中。

單元文件可以分為兩種:有窗體文件和無窗體文件。每當用戶在項目中新建一個窗體,例如使用“File”菜單的“New Form”命令新建窗體,都會自動產生一個單元文件。如果用戶需要產生一個無窗體文件,則可以使用“File”菜單中的“New Unit”命令。

下面給出一個典型的有窗體的單元文件的結構。

          unit Unit1;              //單元文件名
          interface                //接口關鍵字,用來標識文件所調用的單元文件
          uses                     //程序用到的公共單元
            Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls;
          Type                     //這里定義了程序所使用的組件,以及組件所對應的事件
            TForm1 = class(TForm)
              Button1: TButton;
              procedure Button1Click(Sender: TObject);
            private                //定義私有變量、函數和過程
              { Private declarations }
            public                 //定義公共變量、函數和過程
              { Public declarations }
            end;
          var                      //定義程序使用的公共變量
            Form1: TForm1;
          implementation           //以下是程序代碼實現部分
          {$R *.DFM}
          procedure TForm1.Button1Click(Sender: TObject);
          begin
          end;
          end.

代碼首句指出了單元名,單元名必須與單元文件名保持一致。如果保存時文件名變為“Myunit.pas”,則首句相應變為

          unit My

代碼的“uses”語句指出了單元文件在編譯時要鏈接哪些單元,如Windows、Messages、SysUtils、Classes、Graphics、Controls、Forms、Dialogs、StdCtrls等,因為這些單元中包含了你編程中所調用的一些函數、對象等。

“type”語句為窗體的類聲明。類聲明中包括了窗體中的組件和事件響應過程名。如語句

          Button1: TButton;

指出了組件類型(TButton)和組件的Name屬性(Button1)。除處理Name屬性外,設置其他屬性不會影響單元文件源代碼。

添加新的事件處理過程對單元文件的影響最大,每為一個事件定義一個處理過程,窗體的類型定義下就會多出一行,執行部分中就會加入一個空白處理過程,窗體文件中也會相應存入一些信息。例如,上面“type”語句下定義了一處理過程:

          procedure TForm1.Button1Click(Sender: TObject);

而在實現部分(implementation)中,出現了一空白處理過程:

          procedure TForm1.Button1Click(Sender: TObject);
          begin
          end;

用戶可往“begin”和“end”之間添加自己的事件處理代碼。

2.項目文件

項目文件對應用至關重要,由Delphi自動建立,一般用戶不需要改變它。項目文件是真正意義上的Pascal源代碼文件,它描述了整個應用程序的結構及啟動代碼。

          program Project1;
          uses
            Forms,
            Unit1 in 'Unit1.pas' {Form1};
          {$R *.RES}
          begin
            Application.Initialize;
            Application.CreateForm(TForm1, Form1);
            Application.Run;
          end.

用戶可以通過“Project”菜單的“View Source”命令來查看該文件。

代碼首行給出了項目名稱。如果保存時文件名變為“MyPro.dpr”,則首句相應變為

          program MyPro;

編譯得到的程序文件為MyPro.exe或MyPro.dll。

“uses”語句中列出了組成項目的單元文件,其中有些單元文件還有相應的窗體文件,編譯項目時,Delphi將首先編譯各個單元文件及其相應的窗體文件,然后再將其鏈接成可執行文件。例如,

          Unit1 in 'Unit1.pas' {Form1};

語句說明項目包含了單元文件“unit1.PAS”,而后面的括號對“{Form1}”則說明了單元文件有相應的窗體文件“Form1.DFM”。

接下來是編譯指令“{$R *.RES}”,表示把項目中所有資源文件全部包括進來。“begin”和“end”之間的代碼段所起的作用是初始化應用程序、創建表單和啟動應用程序。

1.5.2 項目管理器

使用項目管理器可以了解項目的構成,并方便地對項目進行管理。

選擇“View”菜單的“Project Manager”命令,可以打開項目管理器窗口——“Project Manager”窗口,如圖1.7所示。它用來管理當前項目中的組成文件。在項目管理器中列出了當前項目中的各個單元文件和窗體文件,用戶可以對它們進行操作。

圖1.7 項目管理器窗口

項目管理器由標題欄、工具欄、項目顯示窗口和狀態欄四部分組成。

1.標題欄

標題欄列出了項目管理器的英文名稱“Project Manager”。

2.工具欄

工具欄中包含一個“Project Selector”下拉列表框(從項目中選擇需管理的項目),以及三個快捷按鈕:“New”按鈕(往項目組中新增項目)、“Remove”按鈕(從項目組中刪除選定項目)和“Activate”按鈕(激活項目)。

3.項目顯示窗口

項目管理器根據項目文件中的內容,在下面顯示窗口中列出了組成項目的所有窗體文件和單元文件(“Files”列)以及它們的路徑(“Path”列)。

注意:項目管理器只列出Delphi自己添加的文件,用戶手動添加的文件在項目管理器中得不到反映。

4.狀態欄

狀態欄一般默認不見。如果要顯示狀態欄,可以在窗口中單擊右鍵,打開一快捷菜單,從中選取“Status Bar”命令。狀態欄顯示的是項目顯示窗口中當前文件的完整路徑。

下面介紹如何用項目管理器來進行項目管理。項目管理器的作用主要是用來往應用程序中新增項目或項目組,和從應用程序中刪除項目或項目組。另外,利用項目管理器還可以激活項目組中的某個項目為當前項目。如果要往應用程序中新增項目或項目組,則可以執行如下操作。

(1) 單擊工具欄上的“New”按鈕,打開“New Items”對話框,并選擇“New”選項卡,如圖1.8所示。

圖1.8 “New Items”對話框

(2) 執行如下操作之一。

① 如果要新增項目,單擊“Application”圖標。

② 如果要新增項目組,單擊“Project Group”圖標。

(3) 單擊“OK”按鈕。

如果要從應用程序中刪除項目或項目組,可以在項目管理器中選定要刪除的項目或項目組,然后單擊工具欄上的“Remove”按鈕即可。

對于有多個項目或項目組的應用程序而言,經常需要使用激活功能。例如,應用程序包括Project1和Project2兩個項目。如果當前項目為Project2,而想編輯Project1,此時就要激活Project1。方法是選定Project1后單擊“Activate”按鈕。

1.5.3 項目管理

前面介紹了如何利用項目管理器新增或刪除項目和項目組及激活項目,下面介紹如何往某個項目中增加、刪除文件,以及如何保存項目中的文件。

1.往項目中增加文件

給項目增加文件可分為兩種情況:第一種情況是往項目中增加新的窗體或單元文件;第二種情況是往項目中增加已經存在的文件。對于第一種情況,往項目中增加新窗體或新單元文件,可以單擊“File”菜單中的“New”級聯菜單下的“Form”命令或“Unit”命令。

直接單擊工具欄中的“New Form”按鈕,可往項目中增加一個新窗體。往項目中新增窗體或單元文件后,Delphi會自動修改項目文件中的“uses”語句,將新增加的窗體或單元文件添加進來。

對于第二種情況,往項目中增加已經存在的文件,可以執行如下操作。

(1) 單擊“Project”菜單中的“Add to project”命令,或單擊工具欄上的“Add file to project”按鈕,打開“Add to Project”對話框,如圖1.9所示。

圖1.9 “Add to Project”對話框

(2) 選擇所需的文件,例如選擇單元文件“Unit5_1.pas”。

(3) 單擊“打開”按鈕。

這樣,就將選定文件添加到當前項目中。此時Delphi并沒有把該文件移動到項目文件所在的目錄中,也沒有將該文件復制到項目所在的目錄中,只是在項目文件的“uses”語句中聲明了所增加的文件的名稱及其目錄。這樣,編譯項目時,就能將該文件鏈接。

2.從項目中刪除文件

從項目中刪除文件,Delphi并沒有將文件從硬盤上刪除,只是修改了項目文件中的“uses”語句,將要刪除的文件從該語句中去掉而已。如果要從項目中刪除文件,可執行如下操作。

(1) 單擊“Project”菜單中的“Remove from Project”命令,或單擊工具欄上的“Remove file from project”按鈕,打開“Remove From Project”對話框,如圖1.10(a)所示。

(2) 選擇要刪除的文件。

(3) 單擊“OK”按鈕即可。

另外,可利用項目管理器從項目中刪除文件,在項目管理器中,右擊要刪除的單元文件,將打開一個快捷菜單,從中選擇“Remove From Project”命令即可,如圖1.10(b)所示。

圖1.10 “Remove From Project”對話框

3.查看文件

如果要查看項目中的某窗體或文件的源代碼,根據需要可以采取如下方法。

(1) 如果要查看某個單元文件的源代碼,可以單擊“View”菜單的“Units”命令或工具欄中的“View Unit”按鈕,打開“View Unit”對話框,如圖1.11所示。然后從列表框中選擇要查看的單元文件。再單擊“OK”按鈕。

圖1.11 “View Unit”對話框

(2) 如果要查看某個窗體,可以單擊“View”菜單的“Forms”命令或工具欄中的“View Form”按鈕,打開“View Form”對話框,如圖1.12所示。然后從列表框中選擇要查看的窗體。再單擊“OK”按鈕。

圖1.12 “View Form”對話框

(3) 打開項目管理器窗口,右擊要查看的窗體或單元文件,將打開一快捷菜單,從中選擇“Open”命令,即可查看到選定的窗體或選定單元文件的源代碼。

如果當前窗口為窗體窗口或窗體對應的單元文件源代碼,而用戶正好想查看窗體對應的單元文件或單元文件對應的窗體,則可單擊“View”菜單的“Toggle Form/Unit”命令,或直接在工具欄上單擊“Toggle Form/Unit”按鈕。

4.保存項目及其文件

Delphi提供了許多保存命令,用戶可以根據需要來選擇使用。

(1) 如果要保存當前文件,則可單擊“File”菜單中的“Save”命令,或單擊工具欄上“Save”按鈕。如果該文件是新文件,Delphi將打開一個“Save As”對話框,提示用戶輸入新文件名。

(2) 如果要將當前文件以新文件名存儲,則可單擊“File”菜單戶的“Save As”命令,打開一個“Save As”對話框,然后輸入新文件名,單擊“保存”按鈕即可。

(3) 如果要保存項目中的所有文件,則可單擊“File”菜單中的“Save All”命令,或單擊工具欄中“Save All”按鈕。如果項目中有新文件,Delphi將打開一個“Save As”對話框,提示用戶輸入新文件名。

(4) 如果要將當前項目新名稱存儲,則可單擊“File”菜單中的“Save Project As”命令,打開一個“Save Project As”對話框,然后輸入新項目名,單擊“保存”按鈕。

1.5.4 項目編譯和運行

運行應用程序前,首先應對應用程序進行編譯。Delphi提供了多種編譯方式,供用戶在不同情況下選用。

1.編譯鏈接

單擊“Project”菜單的“Compile項目名”命令,將編譯當前項目自上一次編譯以來修改過的文件,并將項目中所有文件鏈接成可執行文件,該命令的熱鍵為Ctrl+F9。

項目的編譯過程如下:

(1) Delphi首先將項目中各單元文件編譯成以“.DCU”為擴展名的編譯單元文件;

(2) 然后開始編譯項目文件;

(3) 最后將編譯好的文件鏈接成可執行文件。

2.查看編譯過程信息

如果用戶想了解Delphi編譯過程中的信息,可執行如下操作。

(1) 單擊“Tools”菜單的“Environment Options”命令,打開“Environment Options”對話框,并選擇“Preferences”選項卡。

(2) 在“Compiling and Running”選項組中選擇“Show compiler progress”復選框。

(3) 單擊“OK”按鈕。

這樣,每次用戶編譯項目時,就會出現一個Compiler消息框,顯示項目的編譯過程。

3.重建項目圖

重建項目的意思是指重新編譯項目中所有的文件,包括單元文件和項目文件,并重新建立生成可執行文件所需的一系列文件。當用戶不能確定是否有文件被遺漏編譯,或想更新編譯單元文件(.DCU)和可執行文件(.EXE)時,可采取這一種編譯模式。

如果要重建項目,選擇“Project”菜單中的“Build <項目名>”命令即可。

4.只編譯文件

所謂只編譯文件,是指只對項目中的文件進行編譯,而不鏈接它們。這種編譯模式通常用于檢查文件中的語法錯誤。

如果只編譯文件,則可選擇“Project”菜單中的“Syntax check <項目名>”命令。

5.查看編譯信息

編譯完當前項目后,還可以單擊“Project”菜單中的“Information for <項目名>”命令,打開“Information”消息框來查看編譯后的信息。“Information”消息框中提供了以下信息,如表1.1所示。

表1.1 “Information”消息框信息

6.編譯所有項目

對于有多個項目或項目組的應用程序,經常一次編譯并鏈接所有項目,從而一次性生成可執行文件。

要編譯所有項目,單擊“Project”菜單的“Compile All Projects”命令即可。

7.重建所有項目

重建所有項目本質上與重建項目并沒有什么不同,只不過是針對多個項目操作而已。

重建所有項目使用的命令是“Project”菜單的“Build All Projects”命令。

8.運行

若程序沒語法錯誤,編譯后可直接在Delphi集成環境中運行,運行方法是使用“Run”菜單的“Run”命令,或單擊工具欄中的“Run”按鈕,或直接按F9功能鍵。

通過簡略地介紹Delphi集成開發環境的各個組成部分,我們對它的開發工具有了一個大概的了解,學習了一些基本的使用方法。也許,還有些不懂,不過沒關系,以后還會具體學習它們。在Delphi的學習過程中,可以通過幫助文件來解決不懂的問題。當然,Delphi集成開發環境是一個綜合的整體,只有全面靈活地掌握和使用,才能開發出理想高效的應用程序。

主站蜘蛛池模板: 祥云县| 濮阳市| 阳新县| 禹城市| 精河县| 五台县| 郑州市| 丹巴县| 大埔区| 牡丹江市| 峨眉山市| 阿城市| 荔波县| 四平市| 荆州市| 莱阳市| 焦作市| 内乡县| 深圳市| 汉源县| 南阳市| 安阳县| 方城县| 额济纳旗| 洪江市| 玉田县| 视频| 合水县| 榕江县| 潍坊市| 桃园县| 渝中区| 濉溪县| 镶黄旗| 平凉市| 平罗县| 左权县| 佛冈县| 正镶白旗| 县级市| 砚山县|