tft每日頭條

 > 科技

 > delphi編程教程自學網

delphi編程教程自學網

科技 更新时间:2024-10-15 14:09:22

各位小白,請允許我這樣稱呼你哦,因為本人所寫的系列文章确實是給初學者看的。今天我們聊聊程序結構及語言特色。

當我們打開Delphi新建一個Windows程序時,Delphi會彈出一個窗口,我們改名為Form_main,保存時,假如我們命名為main(此名稱不能和窗口的名稱相同)單元,會給我們建立相應的兩個文件:main.dfm和main.pas。前者是Delphi是保存窗口屬性以及以後放在窗口中的控件的各種屬性的文件,為二進制文件,不可編輯。後者才是存儲我們的程序代碼的文件。也就是說,一個窗口會對應兩個文件。一般說來,一個窗口也是一個基本的模塊,所以一個模塊就應該兩個文件。在IDE編程環境中,用F12鍵可以切換代碼編程窗口和圖形編程窗口。

在流行的可視化,也就是圖形編程模式下,一般我們編程,都是先想好功能,然後設計好圖形界面,最後後再編程實現各個按鈕的功能。

在前期,我們做過一個例子程序,現在打開它,然後按F12鍵進入代碼窗口,就可以看到Delphi的一個窗口的代碼程序結構:

unit main;

interface

uses

Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls;

type

Tfrm_main = class(TForm)

bt_test: TButton;

procedure bt_testClick(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

frm_main: Tfrm_main;

implementation

{$R *.dfm}

procedure Tfrm_main.bt_testClick(Sender: TObject);

begin

showmessage(inttostr(frm_main.Width));

end;

end.

從上到下依次說:

1、關鍵字unit 後面就是本單元的名稱。這裡不能手工修改的,在右上角的工程裡可以修改。新版本才有。Delphi7以前是不可以修改的。

2、接着是interface,表示接口,如果定義了接口,也許是放在這裡吧,本人沒有用過,所以這裡從來沒有見過有什麼變化。

3、uses區,是本單元要引用到的其它單元文件,這裡很重要,以後我們要用到其它單元的函數過程,必須把該單元的名稱放在這裡。

4、type區,直到第一個end;結束,這裡定義了我們的窗口類,Tfrm_main = class(TForm)表示我們窗口的類是一個從TForm繼承下來的類,類名叫Tfrm_main,bt_test: TButton;表示其中有一個按鈕成員bt_test,是TButton類型。procedure bt_testClick(Sender: TObject);則是該按鈕的響應Click(單擊)的事件的申明。

5、private區是窗口類的私有申明區,public是公有申明區。位于私有區的申明的函數過程隻有本單元可以訪問。

6、var區是本單元的公有變量申明區,記住這和前面的public區不同,位于public區的變量必須在窗口對象建立和才能訪問,而var區則不是,隻要引用了該單元,就可以訪問,所以也叫全局變量區。本例子中,隻申明了frm_main的變量,類型就是前面定義的Tfrm_main。

7、implementation區,{$R *.dfm}為編譯提示,暫時不用管。

8、函數過程代碼區。本例隻有一個過程:

procedure Tfrm_main.bt_testClick(Sender: TObject);

begin

showmessage(inttostr(frm_main.Width));

end;

這就是前面按鈕申明的bt_testClick的實現方式,記住這裡的事件前面加了類名Tfrm_main,表明它是一個窗口類的成員函數。為了說明局部變量,我改了一下本函數為如下:

procedure Tfrm_main.bt_testClick(Sender: TObject);

var

s:string;

begin

s:='您好';

showmessage(s inttostr(frm_main.Width));

end;

這裡的var區裡定義的變量和前面的不同,是局部變量,隻有本函數或者過程才能訪問。

大家看這裡不難看出,Delphi的函數或者過程是以begin開頭,end;結束,一塊一塊的。

之所以為初學者仔細講解程序結構,是為了以後的方便編程。後面我們的代碼申明在哪裡,是有講究的。

frm_main.Width是訪問窗口的寬度屬性,大家也看到,frm_main是對象名稱,不是類名,然後跟着一個圓點,然後是屬性名稱,就可以了,這非常方便,看起來很自然,大家和C 那種->符号對比一下,就覺得其好簡潔。所以說,Delphi編程語言最大的特色就是簡潔易懂,沒有C 那種 =和= 這樣容易搞昏頭的寫法。說到這,還沒有講到這語言是什麼啊,就是Pascal語言,“Delphi這個名字源于古希臘的城市名。它集中了第三代語言的優點。以Object Pascal為基礎,擴充了面向對象的能力,并且完美地結合了可視化的開發手段。

(1)Pascal語言結構嚴謹,可以很好地培養一個人的編程思想。

(2)Delphi是一門真正的面向對象的開發工具,并且是完全的可視化。

(3)Delphi使用了真編譯,可以讓你的代碼編譯成為可執行的文件,而且編譯速度非常快。

(4)Delphi具有強大的數據庫開發能力,可以讓你輕松地開發數據庫。”來自于百度。

而現在的程序,哪個不需要用到數據庫做信息存儲查詢呢?所以,大家要想做程序,Delphi是上手最快 ,編程最快的。

說到這裡,了解一點面向對象的知識就知道,程序隻定義了窗口類,并沒有生成窗口對象的frm_main的語句啊,怎麼程序就可以訪問其屬性了呢?大家右擊一下位于右上解工程窗口裡的test1.exe,在彈出的窗口裡點一下最下邊的Options菜單,就打開工程屬性窗口:

delphi編程教程自學網(編程金鋼鑽我愛Delphi)1

再點Application下面的Forms菜單,右邊就會出現Forms頁,其中Main_form下拉框是定義本程序的啟動窗口,如果有多個窗口,這裡可以選擇其它。

下面的左邊Auto_create forms表示Delphi自動生成的窗口,大家可以看到有frm_main窗口,說明是我們之所以能訪問,是因為Delphi已經幫我們生成了。那麼,如果系統有幾十個窗口呢?如果都由Delphi自動生成,那麼程序啟動就很慢,也占用了很多系統資源,也沒有那個必要,最合适的是由程序自己在調用的時候才生成。那這樣方式我們讀如何做呢?

請聽下回分解吧?

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关科技资讯推荐

热门科技资讯推荐

网友关注

Copyright 2023-2024 - www.tftnews.com All Rights Reserved