版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、會計學(xué)1delphi教程教程課課 程程 簡簡 介介 數(shù)據(jù)庫技術(shù)是計算機科學(xué)技術(shù)中發(fā)展最快的領(lǐng)域之?dāng)?shù)據(jù)庫技術(shù)是計算機科學(xué)技術(shù)中發(fā)展最快的領(lǐng)域之一,也是應(yīng)用最廣泛的技術(shù)之一,它已成為計算機信一,也是應(yīng)用最廣泛的技術(shù)之一,它已成為計算機信息系統(tǒng)與應(yīng)用的核心技術(shù)和重要基礎(chǔ)。息系統(tǒng)與應(yīng)用的核心技術(shù)和重要基礎(chǔ)。 本課程在數(shù)據(jù)庫原理本課程在數(shù)據(jù)庫原理基礎(chǔ)上開設(shè),基礎(chǔ)上開設(shè),DELPHI功功能強大,編譯速度快,在眾多軟件開發(fā)工具中是應(yīng)用能強大,編譯速度快,在眾多軟件開發(fā)工具中是應(yīng)用廣泛的軟件之一,所以選擇廣泛的軟件之一,所以選擇DELPHI為本課程的數(shù)據(jù)為本課程的數(shù)據(jù)庫程序設(shè)計工具。庫程序設(shè)計工具。 課程分基
2、礎(chǔ)篇和數(shù)據(jù)庫編程篇。基礎(chǔ)篇主要介紹課程分基礎(chǔ)篇和數(shù)據(jù)庫編程篇?;A(chǔ)篇主要介紹DELPHI集成開發(fā)環(huán)境,集成開發(fā)環(huán)境,OBJECT PASCAL語言及語言及DELPHI常用組件的使用。數(shù)據(jù)庫編程篇主要是常用組件的使用。數(shù)據(jù)庫編程篇主要是DELPHI數(shù)據(jù)庫基礎(chǔ),數(shù)據(jù)庫基礎(chǔ), DELPHI開發(fā)數(shù)據(jù)庫常用組件開發(fā)數(shù)據(jù)庫常用組件的使用及的使用及DELPHI開發(fā)數(shù)據(jù)庫應(yīng)用程序等相關(guān)內(nèi)容。開發(fā)數(shù)據(jù)庫應(yīng)用程序等相關(guān)內(nèi)容。第1頁/共58頁課課 程程 簡簡 介介 數(shù)據(jù)庫技術(shù)是計算機科學(xué)技術(shù)中發(fā)展最快的領(lǐng)域之?dāng)?shù)據(jù)庫技術(shù)是計算機科學(xué)技術(shù)中發(fā)展最快的領(lǐng)域之一,也是應(yīng)用最廣泛的技術(shù)之一,它已成為計算機信一,也是應(yīng)用最廣泛
3、的技術(shù)之一,它已成為計算機信息系統(tǒng)與應(yīng)用的核心技術(shù)和重要基礎(chǔ)。息系統(tǒng)與應(yīng)用的核心技術(shù)和重要基礎(chǔ)。 本課程在數(shù)據(jù)庫原理基礎(chǔ)上開設(shè),根據(jù)當(dāng)前學(xué)本課程在數(shù)據(jù)庫原理基礎(chǔ)上開設(shè),根據(jù)當(dāng)前學(xué)科情況,由于科情況,由于DELPHI功能強大,編譯速度快,在眾功能強大,編譯速度快,在眾多軟件開發(fā)工具中脫穎而出,所以選擇多軟件開發(fā)工具中脫穎而出,所以選擇DELPHI為本為本課程的數(shù)據(jù)庫程序設(shè)計工具。課程的數(shù)據(jù)庫程序設(shè)計工具。 課程分基礎(chǔ)篇和數(shù)據(jù)庫編程篇?;A(chǔ)篇主要介紹課程分基礎(chǔ)篇和數(shù)據(jù)庫編程篇?;A(chǔ)篇主要介紹DELPHI集成開發(fā)環(huán)境,集成開發(fā)環(huán)境,OBJECT PASCAL語言及語言及DELPHI常用組件的使用。數(shù)
4、據(jù)庫編程篇主要是常用組件的使用。數(shù)據(jù)庫編程篇主要是DELPHI數(shù)據(jù)庫基礎(chǔ),數(shù)據(jù)庫基礎(chǔ), DELPHI開發(fā)數(shù)據(jù)庫常用組件開發(fā)數(shù)據(jù)庫常用組件的使用及的使用及DELPHI開發(fā)數(shù)據(jù)庫應(yīng)用程序等相關(guān)內(nèi)容。開發(fā)數(shù)據(jù)庫應(yīng)用程序等相關(guān)內(nèi)容。第2頁/共58頁教材、參考書與課時安排教材、參考書與課時安排 教材教材 Delphi數(shù)據(jù)庫程序設(shè)計教程數(shù)據(jù)庫程序設(shè)計教程 劉瑞新等編著 機械工業(yè)出版社課時安排課時安排 授課:32學(xué)時 上機實習(xí):32學(xué)時考核考核 70%筆試+ 30%平時(考勤、作業(yè),上機)第3頁/共58頁 Delphi的發(fā)展史的發(fā)展史 Delphi的特點的特點 Delphi 的集成開發(fā)環(huán)境的集成開發(fā)環(huán)境De
5、lphi可視化編程的基本概念可視化編程的基本概念Delphi可視化編程的步驟可視化編程的步驟Delphi 中文件與文件結(jié)構(gòu)中文件與文件結(jié)構(gòu)Delphi Delphi 基本知識點基本知識點第4頁/共58頁 Delphi是是Borland公司的產(chǎn)品。它是一個運行在公司的產(chǎn)品。它是一個運行在Windows下的可視化下的可視化編程環(huán)境,編程環(huán)境, 可以創(chuàng)建可以創(chuàng)建Windows應(yīng)用程序。應(yīng)用程序。Borland公司以其高質(zhì)量的軟件開公司以其高質(zhì)量的軟件開發(fā)工具獨樹一幟,其用戶遍布世界各地、各個行業(yè)。發(fā)工具獨樹一幟,其用戶遍布世界各地、各個行業(yè)。Delphi 1.0 1995年年2月,月,Borland
6、公司推出了公司推出了Delphi 1.0, 它提供給用戶一種全新的它提供給用戶一種全新的可視化環(huán)境,用于快速開發(fā)可視化環(huán)境,用于快速開發(fā)Windows 3.1的應(yīng)用程序。的應(yīng)用程序。Delphi 2.0 1996年年1月,月,Borland公司正式宣布了公司正式宣布了Delphi 2.0的誕生。的誕生。Delphi 2.0是在是在Windows 95 和和Windows NT平臺上的一套既方便又功能強大的開發(fā)工具,此平臺上的一套既方便又功能強大的開發(fā)工具,此外,還增加了如數(shù)據(jù)模塊外,還增加了如數(shù)據(jù)模塊(data module)等多種高效的數(shù)據(jù)重用功能。等多種高效的數(shù)據(jù)重用功能。Delphi 3
7、.0 Delphi 4.0 Delphi 5.0 Delphi 6.0 Delphi 7.0 Delphi 8.0 Delphi 2005(即即 Delphi 9)DelphiDelphi第5頁/共58頁DelphiDelphi 的特點的特點(1) 應(yīng)用程序的快速開發(fā)應(yīng)用程序的快速開發(fā) Delphi是基于是基于Object Pascal語言的開發(fā)工具,它具有高性能的語言的開發(fā)工具,它具有高性能的32位本地位本地優(yōu)化代碼編譯器。其應(yīng)用程序像用優(yōu)化代碼編譯器。其應(yīng)用程序像用C+語言編寫的應(yīng)用程序一樣,可直接運語言編寫的應(yīng)用程序一樣,可直接運行,能夠最終生成可單獨執(zhí)行的行,能夠最終生成可單獨執(zhí)行的D
8、LL與與EXE文件。文件。(2) 高效的可視化組件庫與面向?qū)ο蟮募軜?gòu)高效的可視化組件庫與面向?qū)ο蟮募軜?gòu) Delphi 可視化組件庫可視化組件庫(VCL):VCL提供了成百個用于用戶接口、數(shù)據(jù)庫提供了成百個用于用戶接口、數(shù)據(jù)庫訪問、數(shù)據(jù)處理、數(shù)據(jù)分析、報表和訪問、數(shù)據(jù)處理、數(shù)據(jù)分析、報表和Internet 開發(fā)的預(yù)建組件。簡化了應(yīng)用開發(fā)的預(yù)建組件。簡化了應(yīng)用開發(fā)的復(fù)雜工作,通過組件提高了代碼的重用性,因而能自動處理重復(fù)性的開發(fā)的復(fù)雜工作,通過組件提高了代碼的重用性,因而能自動處理重復(fù)性的開發(fā)工作,大大提高了開發(fā)效率。開發(fā)工作,大大提高了開發(fā)效率。 (3) 具有多種操作向?qū)?,可加速編程和減少語法錯
9、誤。具有多種操作向?qū)?,可加速編程和減少語法錯誤。DelphiDelphi第6頁/共58頁(4) 強大的數(shù)據(jù)庫功能強大的數(shù)據(jù)庫功能 具有集成的快速報表生成工具和集成的圖表組件,能將企業(yè)數(shù)據(jù)轉(zhuǎn)換具有集成的快速報表生成工具和集成的圖表組件,能將企業(yè)數(shù)據(jù)轉(zhuǎn)換成決策信息。成決策信息。 具有開放式數(shù)據(jù)庫架構(gòu),可輕松連接各式數(shù)據(jù)庫結(jié)構(gòu)。具有開放式數(shù)據(jù)庫架構(gòu),可輕松連接各式數(shù)據(jù)庫結(jié)構(gòu)。 具有集成數(shù)據(jù)庫開發(fā)工具、強大的客戶具有集成數(shù)據(jù)庫開發(fā)工具、強大的客戶/服務(wù)器運算開發(fā)功能。服務(wù)器運算開發(fā)功能。 具有可伸縮的多層面數(shù)據(jù)庫架構(gòu),便于維護和增加重用性。具有可伸縮的多層面數(shù)據(jù)庫架構(gòu),便于維護和增加重用性。 具有具有
10、Web數(shù)據(jù)庫應(yīng)用程序開發(fā)的能力。數(shù)據(jù)庫應(yīng)用程序開發(fā)的能力。 Delphi 不僅是編輯器和編譯器,還是一種使用組件進不僅是編輯器和編譯器,還是一種使用組件進行編程的工具,可使軟件開發(fā)工作更加簡單。這里只介紹行編程的工具,可使軟件開發(fā)工作更加簡單。這里只介紹最常用和最有用的幾個特性,我們還需要在今后的反復(fù)學(xué)最常用和最有用的幾個特性,我們還需要在今后的反復(fù)學(xué)習(xí)、反復(fù)實踐中逐漸加深理解。習(xí)、反復(fù)實踐中逐漸加深理解。DelphiDelphi第7頁/共58頁Delphi 針對不同用戶的需要,推出了三種針對不同用戶的需要,推出了三種版本,分別為:版本,分別為:n標準版標準版n專業(yè)版專業(yè)版n企業(yè)版企業(yè)版Del
11、phiDelphi 的版本的版本第8頁/共58頁DelphiDelphi 中中的有關(guān)概念的有關(guān)概念(1) 面向?qū)ο蟮某绦蛟O(shè)計面向?qū)ο蟮某绦蛟O(shè)計 面向?qū)ο蠓椒ǖ膶嵸|(zhì)是強調(diào)從客觀世界中的固有規(guī)律出發(fā)來面向?qū)ο蠓椒ǖ膶嵸|(zhì)是強調(diào)從客觀世界中的固有規(guī)律出發(fā)來構(gòu)造系統(tǒng),用人類在現(xiàn)實生活中常用的思維方式來認識、理解和描構(gòu)造系統(tǒng),用人類在現(xiàn)實生活中常用的思維方式來認識、理解和描述客觀事物。面向?qū)ο蟪绦蛟O(shè)計述客觀事物。面向?qū)ο蟪绦蛟O(shè)計OOP是是Delphi開發(fā)程序的基礎(chǔ)。開發(fā)程序的基礎(chǔ)。 類類 定義了一個包含域定義了一個包含域(fields)、方法方法(method)和屬性和屬性(property)的抽象數(shù)據(jù)結(jié)
12、構(gòu)。的抽象數(shù)據(jù)結(jié)構(gòu)。類的實例稱做類的實例稱做 對象對象 。例如,。例如,TObject 是一個類,它在是一個類,它在Delphi中是所有其他類的祖先。中是所有其他類的祖先。TComponent 也是一個類,它是也是一個類,它是TObject的后裔,也是在的后裔,也是在Delphi中所有組件對象的共同祖先。中所有組件對象的共同祖先。在設(shè)計階段,放置到窗體上的每一個組件都是一個具體對象在設(shè)計階段,放置到窗體上的每一個組件都是一個具體對象,是相應(yīng)組件類的一個實例。,是相應(yīng)組件類的一個實例。第9頁/共58頁DelphiDelphi 中中的有關(guān)概念的有關(guān)概念(1) 面向?qū)ο蟮某绦蛟O(shè)計面向?qū)ο蟮某绦蛟O(shè)計
13、面向?qū)ο蠓椒ǖ膶嵸|(zhì)是強調(diào)從客觀世界中的固有規(guī)律出發(fā)來面向?qū)ο蠓椒ǖ膶嵸|(zhì)是強調(diào)從客觀世界中的固有規(guī)律出發(fā)來構(gòu)造系統(tǒng),用人類在現(xiàn)實生活中常用的思維方式來認識、理解和描構(gòu)造系統(tǒng),用人類在現(xiàn)實生活中常用的思維方式來認識、理解和描述客觀事物。面向?qū)ο蟪绦蛟O(shè)計述客觀事物。面向?qū)ο蟪绦蛟O(shè)計OOP是是Delphi開發(fā)程序的基礎(chǔ)。開發(fā)程序的基礎(chǔ)。 例如,在某程序單元的類型說明部分有如下程序行:例如,在某程序單元的類型說明部分有如下程序行: Label1: TLabel; Button1: TButton; Edit1: TEdit; 這里,這里,Label1,Button1,Edit1是組件類的實例,是放到是組
14、件類的實例,是放到窗體上的具體組件;而窗體上的具體組件;而TLabel,TButton,TEdit是組件類,是組件類,它們都是它們都是TComponent類的后裔。類的后裔。第10頁/共58頁DelphiDelphi 中中的有關(guān)概念的有關(guān)概念 在在Delphi 中,程序設(shè)計所面臨的一切事物都被視為對象中,程序設(shè)計所面臨的一切事物都被視為對象(object)。按鈕是對象,圖標、窗口是對象,有些不可見的事物或事按鈕是對象,圖標、窗口是對象,有些不可見的事物或事件也是對象,如異常件也是對象,如異常(exception)就是對象。對象的結(jié)構(gòu)由它們的類類就是對象。對象的結(jié)構(gòu)由它們的類類型定義。類的域、方
15、法和屬性稱為對象的元素或成員。型定義。類的域、方法和屬性稱為對象的元素或成員。方法:方法: 是指對象可以完成的動作,代表著一個對象中是指對象可以完成的動作,代表著一個對象中的過程,可以在該對象的外部被調(diào)用。的過程,可以在該對象的外部被調(diào)用。屬性:屬性: 代表包含在對象中的數(shù)據(jù)。通過屬性可以設(shè)置代表包含在對象中的數(shù)據(jù)。通過屬性可以設(shè)置該對象的狀態(tài)、特征等。該對象的狀態(tài)、特征等。 事件:事件: 是對象能夠做出反應(yīng)的條件,在這個特定條件是對象能夠做出反應(yīng)的條件,在這個特定條件下,執(zhí)行與之相關(guān)的代碼過程。下,執(zhí)行與之相關(guān)的代碼過程。 屬性屬性: 事件事件: 方法:方法:第11頁/共58頁DelphiD
16、elphi 中中的有關(guān)概念的有關(guān)概念(2) Delphi的組件的組件 Delphi的系統(tǒng)庫被稱為可視化組件庫的系統(tǒng)庫被稱為可視化組件庫(Visual Component Library_VCL)。利用利用VCL,用戶通過編寫少量的代碼就能夠創(chuàng)建用戶通過編寫少量的代碼就能夠創(chuàng)建出復(fù)雜的應(yīng)用程序。出復(fù)雜的應(yīng)用程序。 Delphi 組件是用于生成用戶界面以及為程序提供組件是用于生成用戶界面以及為程序提供附加功能模塊的對象。絕大多數(shù)組件都可以從集成開附加功能模塊的對象。絕大多數(shù)組件都可以從集成開發(fā)環(huán)境中的組件板上找到。在這個組件類大家族發(fā)環(huán)境中的組件板上找到。在這個組件類大家族VCL中,中,TComp
17、onent 類是所有其他組件類的共同祖先。類是所有其他組件類的共同祖先。TComponent提供了一個組件能夠在提供了一個組件能夠在Delphi 環(huán)境中工環(huán)境中工作所必須具有的屬性和事件。雖然每一個組件都有自作所必須具有的屬性和事件。雖然每一個組件都有自己的特性,但所有組件都分享了它們共同祖先的特性己的特性,但所有組件都分享了它們共同祖先的特性。第12頁/共58頁DelphiDelphi 中中的有關(guān)概念的有關(guān)概念組件包含三種類型的信息:組件包含三種類型的信息:狀態(tài)信息:狀態(tài)信息: 是關(guān)于組件的目前條件,稱為組件的屬性。屬性的值可以是關(guān)于組件的目前條件,稱為組件的屬性。屬性的值可以由用戶或應(yīng)用程
18、序讀取和設(shè)置。典型的組件屬性有:由用戶或應(yīng)用程序讀取和設(shè)置。典型的組件屬性有:Color, Caption等。等。 動作信息:動作信息: 組件通??梢酝瓿梢欢ǖ膭幼?。這些動作由方法定義。方組件通常可以完成一定的動作。這些動作由方法定義。方法實際上是一些過程法實際上是一些過程(procedure)或函數(shù)或函數(shù)(function),它們它們可以在程序中被調(diào)用,以告知組件要做什么。常用的組可以在程序中被調(diào)用,以告知組件要做什么。常用的組件方法還有件方法還有Click,Create,Destroy,DragOver,F(xiàn)ree等。等。反饋信息:反饋信息: Delphi提供了對發(fā)生在組件上的特定事件提供了
19、對發(fā)生在組件上的特定事件(event)編寫代碼編寫代碼的機會,這使得組件成為完全交互式的。通過對事件的的機會,這使得組件成為完全交互式的。通過對事件的響應(yīng),響應(yīng),Delphi為應(yīng)用程序賦予了為應(yīng)用程序賦予了“生命生命”。第13頁/共58頁DelphiDelphi 中中的有關(guān)概念的有關(guān)概念(3) Object Pascal語言語言 Delphi 使用使用Object Pascal 作為底層編程語言作為底層編程語言。Object Pascal 是一種高級編譯語言,它支持結(jié)構(gòu)是一種高級編譯語言,它支持結(jié)構(gòu)化和面向?qū)ο缶幊獭K拇a易讀性強,編譯快,化和面向?qū)ο缶幊獭K拇a易讀性強,編譯快,使用多個
20、使用多個unit文件以支持模塊化程序設(shè)計。文件以支持模塊化程序設(shè)計。 程序員可以在程序員可以在Delphi 的集成開發(fā)環(huán)境的集成開發(fā)環(huán)境IDE中中編寫編寫Object Pascal 程序,使用可視組件庫來創(chuàng)建程序,使用可視組件庫來創(chuàng)建應(yīng)用程序。應(yīng)用程序。DelphiDelphi第14頁/共58頁DelphiDelphi集成開發(fā)環(huán)境集成開發(fā)環(huán)境IDE IDE(Integrated Development Environment)是提供設(shè)是提供設(shè)計、運行和調(diào)試應(yīng)用程序所需的全部工具的一種環(huán)境,并計、運行和調(diào)試應(yīng)用程序所需的全部工具的一種環(huán)境,并對這些工具提供了很好的連接,以減少程序開發(fā)的難度,對這
21、些工具提供了很好的連接,以減少程序開發(fā)的難度,而完成應(yīng)用程序開發(fā)的所有工作(設(shè)計、運行、調(diào)試)都而完成應(yīng)用程序開發(fā)的所有工作(設(shè)計、運行、調(diào)試)都不用離開不用離開IDE。 Delphi的集成開發(fā)環(huán)境使用一組窗口、菜單和相關(guān)應(yīng)的集成開發(fā)環(huán)境使用一組窗口、菜單和相關(guān)應(yīng)用程序來設(shè)計可視化界面,將代碼與每一項屏幕元素相連用程序來設(shè)計可視化界面,將代碼與每一項屏幕元素相連,在設(shè)計過程中所見即所得,從而使應(yīng)用開發(fā)變得容易、,在設(shè)計過程中所見即所得,從而使應(yīng)用開發(fā)變得容易、快速而有趣??焖俣腥ぁ5?5頁/共58頁主窗口主窗口對象樹對象樹瀏覽器瀏覽器對象查對象查看看 器器窗體設(shè)窗體設(shè)計計 器器代碼編代碼編輯
22、輯 器器第16頁/共58頁第17頁/共58頁圖1-13 主窗體第18頁/共58頁n“Project”(項目)如圖1-18所示第19頁/共58頁圖1-14 文件菜單展開 圖1-15 編輯菜單展開 第20頁/共58頁圖1-16 查找菜單展開 圖1-17 查看菜單展開第21頁/共58頁圖1-18 項目菜單展開第22頁/共58頁n“Help”(幫助)如圖1-24所示第23頁/共58頁圖1-19 運行菜單展開第24頁/共58頁 圖1-20 組件菜單展開 圖1-21 數(shù)據(jù)庫菜單展開第25頁/共58頁圖1-22 工具菜單展開 圖1-23 窗口菜單展開第26頁/共58頁圖1-24 幫助菜單展開 第27頁/共5
23、8頁圖1-25 工具欄第28頁/共58頁圖1-26 組件板第29頁/共58頁圖1-27 對象樹瀏覽器窗口1.2.2 1.2.2 對象樹瀏覽器 可以顯示窗體中的所有對象,還可以層級方式表可以顯示窗體中的所有對象,還可以層級方式表達組件之間擁有者的關(guān)系。使用它可以立刻找到某個達組件之間擁有者的關(guān)系。使用它可以立刻找到某個組件及相關(guān)組件。組件及相關(guān)組件。第30頁/共58頁1.2.3 1.2.3 對象查看器第31頁/共58頁圖1-28 對象查看器第32頁/共58頁圖1-29 窗體設(shè)計器的初始狀態(tài)1.2.4 1.2.4 窗體設(shè)計器第33頁/共58頁圖1-30 代碼編輯窗口1.2.5 1.2.5 代碼編輯
24、器代碼編輯器分兩部分:代碼編輯器分兩部分:代碼編輯窗口(圖代碼編輯窗口(圖1-30) 代碼管理器窗口(圖代碼管理器窗口(圖1-31 )第34頁/共58頁圖1-31 代碼管理器窗口(左側(cè))第35頁/共58頁第36頁/共58頁DelphiDelphi 一個一個Delphi程序首先是一個程序框架。這就是當(dāng)啟動程序首先是一個程序框架。這就是當(dāng)啟動Delphi時,或時,或從主窗口的從主窗口的File|New|Application時,所出現(xiàn)的時,所出現(xiàn)的Form1和和Unit1(窗體窗口和窗體窗口和代碼編輯器窗口代碼編輯器窗口)。從組件選項板上選取組件到窗體上,再對組件的屬性。從組件選項板上選取組件到窗
25、體上,再對組件的屬性進行設(shè)置,編寫事件句柄代碼,使各組件對不同事件做出不同的反應(yīng),完進行設(shè)置,編寫事件句柄代碼,使各組件對不同事件做出不同的反應(yīng),完成相應(yīng)功能,這就是在成相應(yīng)功能,這就是在Delphi中開發(fā)應(yīng)用程序。中開發(fā)應(yīng)用程序。使用使用Delphi 創(chuàng)建一個應(yīng)用程序一般包括創(chuàng)建一個應(yīng)用程序一般包括4個步驟個步驟:步驟步驟1:創(chuàng)建一個新工程。:創(chuàng)建一個新工程。步驟步驟2:程序窗體設(shè)計。:程序窗體設(shè)計。包括對窗體和窗體中的組件的設(shè)計。包括對窗體和窗體中的組件的設(shè)計。步驟步驟3:程序代碼設(shè)計。:程序代碼設(shè)計。設(shè)計窗體和窗體中組件的各種操作和響應(yīng)事件處理代碼設(shè)計窗體和窗體中組件的各種操作和響應(yīng)事件
26、處理代碼。步驟步驟4:編譯和調(diào)試程序。:編譯和調(diào)試程序。對程序代碼進行編譯、修改,生成正確可執(zhí)行代碼。對程序代碼進行編譯、修改,生成正確可執(zhí)行代碼。 下面以一個簡單實例,讓我們獲得一些用下面以一個簡單實例,讓我們獲得一些用Delphi進行程序開發(fā)的直觀進行程序開發(fā)的直觀印象和入門知識。印象和入門知識。第37頁/共58頁DelphiDelphi 下面開發(fā)一個用于計算工資的小應(yīng)用程序,填入相應(yīng)下面開發(fā)一個用于計算工資的小應(yīng)用程序,填入相應(yīng)的工資項后單擊的工資項后單擊“計算實發(fā)工資計算實發(fā)工資”按鈕,在實發(fā)工資欄中按鈕,在實發(fā)工資欄中可自動得到最后的結(jié)果,程序運行界面如下:可自動得到最后的結(jié)果,程序
27、運行界面如下:第38頁/共58頁 步驟步驟1 1:創(chuàng)建一個新工程:創(chuàng)建一個新工程 每當(dāng)啟動每當(dāng)啟動Delphi時,都會自動打開一個空白工程,其默認名為時,都會自動打開一個空白工程,其默認名為Project1。假如在已打開一個現(xiàn)有工程的情況下要創(chuàng)建新工程,則應(yīng)從假如在已打開一個現(xiàn)有工程的情況下要創(chuàng)建新工程,則應(yīng)從Delphi主菜主菜單中選擇單中選擇File | New| Application。當(dāng)啟動當(dāng)啟動Delphi時,或打開一個新工程時,時,或打開一個新工程時,系統(tǒng)顯示一個窗體和一個代碼編輯器窗口。窗體的默認名字為系統(tǒng)顯示一個窗體和一個代碼編輯器窗口。窗體的默認名字為Form1,用用于放置對
28、象以構(gòu)成用戶界面。代碼編輯器窗口的默認名字為于放置對象以構(gòu)成用戶界面。代碼編輯器窗口的默認名字為Unit1,窗口內(nèi)窗口內(nèi)含有部分程序代碼。此外,含有部分程序代碼。此外,Delphi中還有對象觀察器中還有對象觀察器(Object Inspector),對對象觀察器用于設(shè)置放置在窗體上的對象的屬性值。象觀察器用于設(shè)置放置在窗體上的對象的屬性值。 每當(dāng)打開一個新工程時,每當(dāng)打開一個新工程時,Delphi都將自動生成以下文件:都將自動生成以下文件:(1)Project1.DPR 工程文件:工程文件:系統(tǒng)自動建立,描述整個程序的結(jié)構(gòu)及系統(tǒng)自動建立,描述整個程序的結(jié)構(gòu)及 啟動代碼。啟動代碼。(2) Uni
29、t1.PAS 單元文件:單元文件:與工程主窗體相關(guān)聯(lián)的源代碼文件。與工程主窗體相關(guān)聯(lián)的源代碼文件。(3) Unit1.DFM 窗體文件:窗體文件:保存放置于當(dāng)前窗體上的對象以及它們保存放置于當(dāng)前窗體上的對象以及它們 的屬性的資源文件。的屬性的資源文件。第39頁/共58頁 步驟步驟1 1:創(chuàng)建一個新工程:創(chuàng)建一個新工程 在創(chuàng)建一個新的應(yīng)用程序之前,首先應(yīng)建立一個新文件夾用于保在創(chuàng)建一個新的應(yīng)用程序之前,首先應(yīng)建立一個新文件夾用于保存該應(yīng)用程序的所有文件存該應(yīng)用程序的所有文件(注意,不要把文件存于注意,不要把文件存于Delphi的默認目錄下的默認目錄下)。例如,在。例如,在D盤中建立新文件夾盤中建
30、立新文件夾delphiq,用于保存數(shù)據(jù)庫文件;在該用于保存數(shù)據(jù)庫文件;在該文件夾下建立子文件夾文件夾下建立子文件夾program1,用于保存工程文件。在新工程的空用于保存工程文件。在新工程的空白窗體上進行了初步設(shè)計后,要隨時把新工程的有關(guān)文件保存到指定白窗體上進行了初步設(shè)計后,要隨時把新工程的有關(guān)文件保存到指定目錄下。第一次保存工程文件時,從目錄下。第一次保存工程文件時,從Delphi主菜單中選擇主菜單中選擇File | Save Project as,打開保存文件對話框。打開保存文件對話框。Delphi首先保存工程中所包含的首先保存工程中所包含的單元文件單元文件(后綴為后綴為.pas,默認名
31、為默認名為Unit1,可修改為別的名字可修改為別的名字),然后保,然后保存工程文件存工程文件(后綴為后綴為.dpr,默認名為默認名為Project1,可修改為別的名字可修改為別的名字)。以。以后打開這個工程文件繼續(xù)進行設(shè)計時,要隨時保存所做的修改。那時后打開這個工程文件繼續(xù)進行設(shè)計時,要隨時保存所做的修改。那時,只要從,只要從Delphi主菜單中選擇主菜單中選擇File | Save All即可,不會再顯示保存文即可,不會再顯示保存文件對話框,所有文件按已有的名字存儲。除了上面提到的文件類型外件對話框,所有文件按已有的名字存儲。除了上面提到的文件類型外,在設(shè)計和編譯過程中,在設(shè)計和編譯過程中,
32、Delphi還生成與工程相關(guān)的其他文件。把工還生成與工程相關(guān)的其他文件。把工程文件存到一個特定目錄下,便于方便地跟蹤和維護這些文件。程文件存到一個特定目錄下,便于方便地跟蹤和維護這些文件。第40頁/共58頁 步驟步驟1 1:創(chuàng)建一個新工程:創(chuàng)建一個新工程 假設(shè)新工程包含了兩個窗體,且第一次保存工程文件時都采用了假設(shè)新工程包含了兩個窗體,且第一次保存工程文件時都采用了默認名字;則第一次保存工程時將會顯示兩次默認名字;則第一次保存工程時將會顯示兩次“Save Unit1 As”對話對話框,保存兩個單元文件,文件名分別為框,保存兩個單元文件,文件名分別為Unit1和和Unit2;然后顯示然后顯示“S
33、ave Project1 As”對話框,保存工程文件對話框,保存工程文件Project1.dpr。在進行了上在進行了上述操作之后,述操作之后,D:delphiqprogram1文件夾內(nèi)將會出現(xiàn)文件夾內(nèi)將會出現(xiàn)8個文件。其中個文件。其中,有兩個單元文件,有兩個單元文件(Unit1.PAS,Unit2.PAS)、兩個窗體文件兩個窗體文件(Unit1.DFM,Unit2.DFM)、一個工程文件一個工程文件(Project1.DPR)。注意。注意Project1.DPR的圖標,以后重新打開這個工程時,應(yīng)打開這個文件的圖標,以后重新打開這個工程時,應(yīng)打開這個文件。另外三個文件都是另外三個文件都是Delp
34、hi自行創(chuàng)建、自行維護的。其中,自行創(chuàng)建、自行維護的。其中,Project1.cfg是是Delphi編譯器使用的結(jié)構(gòu)文件,它存放工程的結(jié)構(gòu)設(shè)置。編譯器使用的結(jié)構(gòu)文件,它存放工程的結(jié)構(gòu)設(shè)置。Project1.dof 為工程選項文件,它包含編譯器和連接器的有關(guān)設(shè)置、為工程選項文件,它包含編譯器和連接器的有關(guān)設(shè)置、搜索路徑、版本信息等。搜索路徑、版本信息等。Project1.res為資源文件。每一個為資源文件。每一個Delphi工程工程都使用一個標準的都使用一個標準的Windows 資源文件資源文件(.RES)來保存應(yīng)用程序圖標的來保存應(yīng)用程序圖標的位圖。對應(yīng)用程序進行編譯位圖。對應(yīng)用程序進行編譯(
35、compile)或運行或運行(run)后,再保存工程文后,再保存工程文件件(File | Save All)時,文件夾內(nèi)將會出現(xiàn)更多的文件。時,文件夾內(nèi)將會出現(xiàn)更多的文件。第41頁/共58頁 步驟步驟2 2:程序窗體設(shè)計:程序窗體設(shè)計 窗體是構(gòu)造應(yīng)用程序的基本結(jié)構(gòu)單元,對窗體窗體是構(gòu)造應(yīng)用程序的基本結(jié)構(gòu)單元,對窗體及放置在其上的組件進行設(shè)置和排列是及放置在其上的組件進行設(shè)置和排列是Delphi程序設(shè)程序設(shè)計的重要工作之一。計的重要工作之一。 Delphi組件包括用戶界面中可見的部分,如按組件包括用戶界面中可見的部分,如按鈕、標簽、列表框等,以及在程序運行時不可見部鈕、標簽、列表框等,以及在程序
36、運行時不可見部分,如數(shù)據(jù)讀寫組件、定時器等。大多數(shù)組件都在分,如數(shù)據(jù)讀寫組件、定時器等。大多數(shù)組件都在組件選項板上提供,其他某些組件可從組件選項板上提供,其他某些組件可從Delphi可視化可視化組件庫組件庫(VCL)中找到。下面介紹如何從組件板上選取中找到。下面介紹如何從組件板上選取組件放到窗體上。組件放到窗體上。DelphiDelphi第42頁/共58頁 步驟步驟2 2:程序窗體設(shè)計:程序窗體設(shè)計(1)放置組件)放置組件 (2)排列組件排列組件 View|Alighment Palette(3)鎖定組件)鎖定組件 Edit|Lock Control(4)設(shè)置窗體和組件屬性)設(shè)置窗體和組件屬性
37、 Object InspectorDelphiDelphi第43頁/共58頁 步驟步驟2 2:程序窗體設(shè)計:程序窗體設(shè)計(1)放置組件)放置組件 (2)排列組件排列組件 (3)鎖定組件)鎖定組件(4)設(shè)置窗體和組件屬性)設(shè)置窗體和組件屬性 對象查看器對象查看器Object Inspector第44頁/共58頁 步驟步驟3 3:編寫程序代碼:編寫程序代碼 完成用戶界面,只是建立了一個程序完成用戶界面,只是建立了一個程序“框架框架”,下面要做,下面要做的便是給程序加入的便是給程序加入“靈魂靈魂”,即編寫程序代碼,即編寫程序代碼, ,使它能夠完成所使它能夠完成所要求的功能。要求的功能。 單擊窗體上的
38、單擊窗體上的“計算實發(fā)工資計算實發(fā)工資”按鈕,在按鈕,在Object InspectorObject Inspector中,點中,點“EventsEvents”頁標簽,出現(xiàn)事件窗口。在本例中,我們只關(guān)頁標簽,出現(xiàn)事件窗口。在本例中,我們只關(guān)心心OnClickOnClick事件,即按鈕接收到左鍵單擊時應(yīng)用程序所作出的反事件,即按鈕接收到左鍵單擊時應(yīng)用程序所作出的反應(yīng)。在應(yīng)。在Object InspectorObject Inspector窗口中雙擊窗口中雙擊OnClickOnClick事件右端的值段事件右端的值段,會使得,會使得DelphiDelphi激活代碼編輯器,并將光標停在該按鈕所對應(yīng)激活
39、代碼編輯器,并將光標停在該按鈕所對應(yīng)的過程的的過程的begin.endbegin.end之間。之間。 代碼編輯器中,代碼編輯器中,DelphiDelphi自動建立的過程以關(guān)鍵字自動建立的過程以關(guān)鍵字ProcedureProcedure開頭,用戶可以在開頭,用戶可以在beginbeginendend之間加入自己的程序,也可以定之間加入自己的程序,也可以定義變量。這個程序塊對用戶的外部事件義變量。這個程序塊對用戶的外部事件( (此例中是單擊按鈕此例中是單擊按鈕) )進進行響應(yīng)。我們稱之為事件處理過程。行響應(yīng)。我們稱之為事件處理過程。DelphiDelphi第45頁/共58頁 步驟步驟4 4:編譯的
40、運行程序:編譯的運行程序 完成了上述設(shè)置后,按鍵盤上的完成了上述設(shè)置后,按鍵盤上的F9功能鍵功能鍵(或在或在Delphi 主菜單中選擇主菜單中選擇Run|Run),Delphi 會編譯并運會編譯并運行該程序,程序運行結(jié)果如下圖所示。行該程序,程序運行結(jié)果如下圖所示。DelphiDelphi第46頁/共58頁DelphiDelphi 工程工程Project 是是Delphi的一個重要術(shù)語,它與一個應(yīng)用程的一個重要術(shù)語,它與一個應(yīng)用程序相對應(yīng),但比一般的應(yīng)用程序具有更多的含義。工程是構(gòu)成序相對應(yīng),但比一般的應(yīng)用程序具有更多的含義。工程是構(gòu)成一個一個Delphi應(yīng)用的所有文件的集合。其中一些文件是在
41、設(shè)計應(yīng)應(yīng)用的所有文件的集合。其中一些文件是在設(shè)計應(yīng)用時創(chuàng)建的,另一些是編譯工程源代碼時生成的。用時創(chuàng)建的,另一些是編譯工程源代碼時生成的。 要有效地管理工程,必須理解構(gòu)成工程的各種文件和文件要有效地管理工程,必須理解構(gòu)成工程的各種文件和文件類型以及它們的作用。一般情況下,不必直接處理每個文件,類型以及它們的作用。一般情況下,不必直接處理每個文件,而是通過而是通過Delphi的集成開發(fā)環(huán)境和可視化工具去處理它們。的集成開發(fā)環(huán)境和可視化工具去處理它們。 這是前面的示例程序所這是前面的示例程序所生成的所有文件,這些文件生成的所有文件,這些文件被指定存放在被指定存放在D: delphiq exampl
42、e1.1文件夾中。文件夾中。第47頁/共58頁 “UnitUnit單元單元”是是PascalPascal語言中能夠獨立語言中能夠獨立編譯的基本單位。編譯的基本單位。DelphiDelphi工程中最常見的單工程中最常見的單元就是窗體單元,它與一個窗體關(guān)聯(lián),并包元就是窗體單元,它與一個窗體關(guān)聯(lián),并包含了這個窗體上的所有事件處理程序和其他含了這個窗體上的所有事件處理程序和其他相關(guān)代碼。所以,單元文件就是建立一個工相關(guān)代碼。所以,單元文件就是建立一個工程時所生成的主要源代碼文件。程時所生成的主要源代碼文件。第48頁/共58頁 當(dāng)編譯、運行工程時,當(dāng)編譯、運行工程時,DelphiDelphi的編譯器的編
43、譯器針對每個單元的源代碼產(chǎn)生一個二進制文件針對每個單元的源代碼產(chǎn)生一個二進制文件,該文件名和單元文件名相同,擔(dān)擴展名是,該文件名和單元文件名相同,擔(dān)擴展名是. .dcu(Delphi compiled unit)dcu(Delphi compiled unit)。dcudcu文件的文件的格式是格式是DelphiDelphi編譯器所專有的,并支持快速編譯器所專有的,并支持快速編譯和鏈接。編譯和鏈接。第49頁/共58頁 窗體是窗體是DelphiDelphi應(yīng)用的可視部分,一般由可視化工應(yīng)用的可視部分,一般由可視化工具設(shè)計。系統(tǒng)為新建窗體起的默認標識名為具設(shè)計。系統(tǒng)為新建窗體起的默認標識名為Form
44、1Form1、Form2Form2等,但窗體文件名也用單元名作為默認名:等,但窗體文件名也用單元名作為默認名:Unit1.dfm Unit1.dfm 。 窗體文件用來存儲窗體的特性,如窗體上各對象窗體文件用來存儲窗體的特性,如窗體上各對象的尺寸、位置等。該文件是由系統(tǒng)負責(zé)維護,一般不的尺寸、位置等。該文件是由系統(tǒng)負責(zé)維護,一般不需要程序員干預(yù)。如有必要可以在代碼編輯器中打開需要程序員干預(yù)。如有必要可以在代碼編輯器中打開一個一個. .dfmdfm文件,查看和修改這些數(shù)據(jù)。文件,查看和修改這些數(shù)據(jù)。 打開窗體文件的方法是:在窗體單擊打開窗體文件的方法是:在窗體單擊mousemouse右鍵右鍵,快捷
45、菜單,快捷菜單| |View As TextView As Text;返回窗體界面時,同樣返回窗體界面時,同樣使用快捷菜單使用快捷菜單| |View As FormView As Form。第50頁/共58頁 備份文件:當(dāng)對一個工程進行修改時,備份文件:當(dāng)對一個工程進行修改時,系統(tǒng)會保存一個修改之前的版本,生成幾個系統(tǒng)會保存一個修改之前的版本,生成幾個主要文件的備份文件。備份文件的名字與其主要文件的備份文件。備份文件的名字與其所對應(yīng)的文件名相同。所對應(yīng)的文件名相同。 修改備份文件名的后綴,使其成為正式修改備份文件名的后綴,使其成為正式文件,即可使用。但要注意版本的一致性,文件,即可使用。但要注
46、意版本的一致性,不能有的文件是新版本,有的文件是原來的不能有的文件是新版本,有的文件是原來的版本。版本。第51頁/共58頁 工程文件:是一個工程的主程序(源代工程文件:是一個工程的主程序(源代碼)。這個文件是由系統(tǒng)自動創(chuàng)建和維護的碼)。這個文件是由系統(tǒng)自動創(chuàng)建和維護的,一般不需要程序員干預(yù)。,一般不需要程序員干預(yù)。 工程文件包含本工程使用的所有窗體和工程文件包含本工程使用的所有窗體和單元的引用。打開、保存或編譯一個工程時單元的引用。打開、保存或編譯一個工程時,系統(tǒng)就是通過工程文件知道該工程包括哪,系統(tǒng)就是通過工程文件知道該工程包括哪些窗體、單元以及存放它們的文件的。些窗體、單元以及存放它們的文件的。 打開工程文件的方法:打開工程文件的方法:View|Project View|Project Manager|Manager|工
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 1.1 國家是什么(導(dǎo)學(xué)案) 高二政治 (統(tǒng)編版選擇性必修1)
- 印刷機械行業(yè)智能化發(fā)展的市場機遇分析考核試卷
- 2025年銷售傭金合同范本與業(yè)績激勵方案3篇
- 2025版木工行業(yè)培訓(xùn)與認證服務(wù)合同范本4篇
- 2025年商業(yè)委托銷售協(xié)議
- 2025年合法住房公租房協(xié)議
- 二零二五年度駕校品牌推廣與市場拓展合作合同2篇
- 2025年度個人二手車轉(zhuǎn)讓及二手車增值服務(wù)合同3篇
- 二零二五年度林業(yè)苗木繁育基地承包合同4篇
- 二零二五年度集體產(chǎn)權(quán)房屋買賣合同樣本(含房屋產(chǎn)權(quán)調(diào)查及核實要求)
- 《醫(yī)院財務(wù)分析報告》課件
- 2025老年公寓合同管理制度
- 2024-2025學(xué)年人教版數(shù)學(xué)六年級上冊 期末綜合卷(含答案)
- 2024中國汽車后市場年度發(fā)展報告
- 感染性腹瀉的護理查房
- 天津市部分區(qū)2023-2024學(xué)年高二上學(xué)期期末考試 物理 含解析
- 《人工智能基礎(chǔ)》全套英語教學(xué)課件(共7章)
- 廢鐵收購廠管理制度
- 物品賠償單范本
- 《水和廢水監(jiān)測》課件
- 滬教版六年級數(shù)學(xué)下冊課件【全冊】
評論
0/150
提交評論