版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、.?DELPHI基礎(chǔ)教程? 1第一章Delphi快速入門一第一章Delphi快速入門二第一章Delphi快速入門三第一章Delphi快速入門四第一章Delphi快速入門五第二章Delphi面向?qū)ο蟮木幊谭椒ㄒ坏诙翫elphi面向?qū)ο蟮木幊谭椒ǘ诙翫elphi面向?qū)ο蟮木幊谭椒ㄈ诙翫elphi面向?qū)ο蟮木幊谭椒ㄋ牡谌伦址斜砑皯靡坏谌伦址斜砑皯枚谒恼挛谋揪庉嬈鞯脑O(shè)計一第四章文本編輯器的設(shè)計二第五章Delphi圖形圖像編程一第五章Delphi圖形圖像編程二第六章文件管理一第六章文件管理二第六章文件管理三第七章剪貼板和動態(tài)數(shù)據(jù)交換一第七章剪貼板和動態(tài)數(shù)據(jù)交換二第八章對象鏈接
2、與嵌入一第八章對象鏈接與嵌入二第九章Delphi拖放編程第十章動態(tài)鏈接庫編程一第十章動態(tài)鏈接庫編程二第十一章Delphi應用程序的應用一第十一章Delphi應用程序的應用二第十二章異常處理與程序調(diào)試一第十二章異常處理與程序調(diào)試二第十二章異常處理與程序調(diào)試三第十三章Delphi開發(fā)數(shù)據(jù)庫應用程序概述一第十三章Delphi開發(fā)數(shù)據(jù)庫應用程序概述二第十四章簡單數(shù)據(jù)庫應用的創(chuàng)立及MASTAPP介紹一第十四章簡單數(shù)據(jù)庫應用的創(chuàng)立及MASTAPP介紹二第十四章簡單數(shù)據(jù)庫應用的創(chuàng)立及MASTAPP介紹三第十五章數(shù)據(jù)訪問部件的應用及編程一第十五章數(shù)據(jù)訪問部件的應用及編程二第十五章數(shù)據(jù)訪問部件的應用及編程三第十
3、六章數(shù)據(jù)閱讀部件的應用及編程一第十六章數(shù)據(jù)閱讀部件的應用及編程二第十七章SQL編程一第十七章SQL編程二第十八章Delphi客戶效勞器應用開發(fā)一第十八章Delphi客戶效勞器應用開發(fā)二第十八章Delphi客戶效勞器應用開發(fā)三第十八章Delphi客戶效勞器應用開發(fā)四第十九章Delphi自定義部件開發(fā)一第十九章Delphi自定義部件開發(fā)二第十九章Delphi自定義部件開發(fā)三第十九章Delphi自定義部件開發(fā)四第二十章開發(fā)Delph i對象式數(shù)據(jù)管理功能一第二十章開發(fā)Delphi對象式數(shù)據(jù)管理功能二第二十章開發(fā)Delphi對象式數(shù)據(jù)管理功能三第二十章開發(fā)Delphi對象式數(shù)據(jù)管理功能四第二十章開發(fā)D
4、elphi對象式數(shù)據(jù)管理功能五Delphi是全新的可視化編程環(huán)境,為我們提供了一種方便、快捷的Windows應用程序開發(fā)工具。它使用了Microsoft Windows圖形用戶界面的許多先進特性和設(shè)計思想,采用了彈性可重復利用的完好的面向?qū)ο蟪绦蛘Z言O(shè)bject-Oriented Language、當今世界上最快的編輯器、最為領(lǐng)先的數(shù)據(jù)庫技術(shù)。對于廣闊的程序開發(fā)人員來講,使用Delphi開發(fā)應用軟件,無疑會大大地進步編程效率,而且隨著應用的深化,您將會發(fā)現(xiàn)編程不再是枯燥無味的工作-Delphi的每一個設(shè)計細節(jié),都將帶給您一份欣喜。1.1 Delphi根本概念介紹1.1.1 Delphi的根本形
5、式Delphi實際上是Pascal語言的一種版本,但它與傳統(tǒng)的Pascal語言有天壤之別。一個Delphi程序首先是應用程序框架,而這一框架正是應用程序的"骨架"。在骨架上即使沒有附著任何東西,仍可以嚴格地按照設(shè)計運行。您的工作只是在"骨架"中參加您的程序。缺省的應用程序是一個空白的窗體Form,您可以運行它,結(jié)果得到一個空白的窗口。這個窗口具有Windows窗口的全部性質(zhì):可以被放大縮小、挪動、最大最小化等,但您卻沒有編寫一行程序。因此,可以說應用程序框架通過提供所有應用程序共有的東西,為用戶應用程序的開發(fā)打下了良好的根底。Delphi已經(jīng)為您做好了一
6、切根底工作-程序框架就是一個已經(jīng)完成的可運行應用程序,只是不處理任何事情。您所需要做的,只是在程序中參加完成您所需功能的代碼而已。在空白窗口的背后,應用程序的框架正在等待用戶的輸入。由于您并未告訴它接收到用戶輸入后作何反響,窗口除了響應Windows的根本操作挪動、縮放等外,它只是承受用戶的輸入,然后再忽略。Delphi把Windows編程的回調(diào)、句柄處理等繁復過程都放在一個不可見的Romulam覆蓋物下面,這樣您可以不為它們所困擾,輕松沉著地對可視部件進展編程。1.1.2面向?qū)ο缶幊痰母拍蠲嫦驅(qū)ο蟮某绦蛟O(shè)計Object-Oriented Programming,簡記為OOP是Delphi誕生
7、的根底。OOP立意于創(chuàng)立軟件重用代碼,具備更好地模擬現(xiàn)實世界環(huán)境的才能,這使它被公認為是自上而下編程的優(yōu)勝者。它通過給程序中參加擴展語句,把函數(shù)"封裝"進Windows編程所必需的"對象"中。面向?qū)ο蟮木幊陶Z言使得復雜的工作條理明晰、編寫容易。說它是一場革命,不是對對象本身而言,而是對它們處理工作的才能而言。對象并不與傳統(tǒng)程序設(shè)計和編程方法兼容,只是部分面向?qū)ο蠓炊鴷骨樾胃恪3钦麄€開發(fā)環(huán)境都是面向?qū)ο蟮?,否那么對象產(chǎn)生的好處還沒有帶來的費事多。而Delphi是完全面向?qū)ο蟮?,這就使得Delphi成為一種觸手可及的促進軟件重用的開發(fā)工具,從而具有強大
8、的吸引力。一些早期的具有OOP性能的程序語言如C+,Pascal,Smalltalk等,雖然具有面向?qū)ο蟮奶卣?,但不能輕松地畫出可視化對象,與用戶交互才能較差,程序員仍然要編寫大量的代碼。Delphi的推出,填補了這項空白。您不必自己建立對象,只要在提供的程序框架中參加完成功能的代碼,其余的都交給Delphi去做。欲生成漂亮的界面和構(gòu)造良好的程序絲毫不必絞盡腦汁,Delphi將幫助您輕松地完成。它允許在一個具有真正OOP擴展的可視化編程環(huán)境中,使用它的Object Pascal語言。這種革命性的組合,使得可視化編程與面向?qū)ο蟮拈_發(fā)框架嚴密地結(jié)合起來。1.2 Delphi快速入門在這一節(jié)中,我們
9、來開發(fā)一個小程序。隨著開發(fā)的過程,逐步介紹Delphi的主要部件及其操作方法。建議讀者按照本書介紹的過程,在您的電腦上直接操作。您將對Delphi的可視化編程有一個直觀、快捷的理解,必將起到事半功倍的效果。1.2.1進入Delphi的可視化編程環(huán)境1.2.1.1安裝Delphi Delphi的安裝與其它應用軟件并無不同。2.0版必須在Windows 95以上的操作系統(tǒng)中使用。啟動Windows 95或Windows NT后,將Delphi的光盤放入光驅(qū)CD-ROM中,運行光盤上的INSTALLSETUP.EXE文件,它的安裝程序會提示您正確地裝入Delphi。假設(shè)您是在微軟中文Windows環(huán)
10、境中安裝Delphi,請參照附錄A來設(shè)置您的BDE環(huán)境,以便于處理中文數(shù)據(jù)。1.2.1.2進入Delphi環(huán)境為防止隱藏在Delphi后的Program Manager和曾經(jīng)運行過的其它程序擾亂版面,分散您的注意力,不妨在啟動Delphi前關(guān)掉其它應用程序;啟動Delphi后,再最小化隱藏在后面的Delphi 2.0程序組。這樣屏幕上就只留下Delphi窗口可見了。首次加載Delphi,屏幕上會出現(xiàn)四個窗口:標題為"Delphi-Project1"的Delphi主窗口Object Inspector窗口標題為"Form1"的窗體Form窗口標題為&quo
11、t;Unit1.PAS"的代碼編輯窗口。剛啟動時這一窗口的大部分被"Form1"窗體所掩蓋。將"Form1"窗體移開,或單擊Form1窗體下方的狀態(tài)行,可以使其全部可見。在"Form1"窗體的任意可見位置單擊鼠標,可以恢復主窗體可見以下我們將對這四個窗口分別進展介紹。1.2.2 Delphi可視化編程環(huán)境介紹1.2.2.1主窗口Main FormDelphi的主窗口位于屏幕的上端,包括Menu菜單、Speed Bar加速條和Component Panel部件選項板。Menu是下拉式主菜單。Speed Bar位于主窗口的左下端
12、,由兩排共14個加速按鈕組成。這些按鈕是菜單功能的快捷方式,各種圖標直觀地表示了它能執(zhí)行的動作。Component Panel由一行、假設(shè)干頁對象按鈕所組成,利用它來選擇需要的部件并將它放到窗體中去。1.2.2.2 Object Inspector對象檢視器Object Inspector窗口含有兩頁:Properties頁顯示窗體中當前被選擇部件的屬性信息,并允許改變對象的屬性;Events頁列出了當前部件可以響應的事件。按動Object Inspector下端的"Events"頁標簽,使得Events頁可見,這一定的事件后邊的空白處,可以定義對象承受到相應事件時執(zhí)行的動
13、作。首次啟動時,Object Inspector窗口顯示的是當前窗體Form1的屬性。Object Inspector根據(jù)對象屬性的多少,決定是否有滾行顯示。挪動滾行條,可以查看當前對象的全部屬性。此外,Object Inspector上還有Object Selector對象選擇器,位于Object Inspector上方的下拉式菜單中。它顯示了窗體上所有部件的名稱和類型,也包含窗體本身。您可以用Object Selector很容易地在窗體的各個部件之間切換,也可以快速地回到窗體本身。當窗體中含有較多的對象時,您會發(fā)現(xiàn)這是切換對象尤其是回到窗體的最快捷途徑。想使Object Inspector
14、一直可見,可將鼠標移到Object Inspector上,按動右鍵,以啟動Object Inspector的彈出式菜單,將其設(shè)置為Stay On Top。這對初學者常是一個很重要的設(shè)置方式。1.2.2.3窗體窗口Forms窗口是開展大部分設(shè)計的工作區(qū)域。首次啟動Delphi 2.0時顯示的是窗體Form1??梢园巡考旁诖绑w中,通過挪動位置、改變尺寸等操作隨心所欲地安排它們,以此來開發(fā)應用程序的用戶界面。您可以把窗體想象成一個可以放置其它部件的容器。窗體上有柵格Grids,供放置部件時對齊位置用,在程序運行時Grids是不可見的。一個真正的應用程序可能有不止一個窗口,您可以選用不同的窗體進展設(shè)
15、計。其它窗體可以是對話框Dialog Box、數(shù)據(jù)錄入框等。1.2.2.4代碼窗口代碼窗口一開場處于窗體窗口之下。因為在Delphi中,設(shè)計用戶界面直接在窗體中進展,運行結(jié)果和設(shè)計樣板完全一致。當部件被放到窗體上時,Delphi會自動生成大部分的用戶界面代碼。您所應做的只是在它為您生成的框架中參加完成所需功能的程序段而已。點動Form1的狀態(tài)行使代碼窗口可見。這個窗口中是代碼編輯器??梢栽谄渲袝鴮慏elphi應用程序的源代碼。當程序中含有不止一個窗口時,會有幾個庫單元的源程序出如今代碼編輯器中。代碼編輯器的標題條中顯示了當前正在編輯的庫單元文件名。要查看某一特定程序的源代碼,只需用鼠標點動寫有
16、該庫單元文件名的頁標簽,就可以對該庫單元進展編輯了。1.2.3設(shè)計簡單的用戶界面首先從空白窗體開場工作。我們將設(shè)計一個簡單的程序:在屏幕上開一個窗口,窗口中有一個圖框,用三個按鈕來改變圖框的形狀;再用一個圖標按鈕來進展圖框的顏色設(shè)置,通過顏色編輯對話框來選擇變成哪一種顏色。在菜單上選用File|New Application菜單項來生成新的工程文件。這時,屏幕上出現(xiàn)圖1.2所示的窗體。1.2.3.1選取部件參加到窗體中部件Component是建立Delphi應用程序的要素。Delphi為用戶提供了豐富的部件庫,既有可視的部件如編輯框、按鈕等,也有不可視的部件如系統(tǒng)定時器、數(shù)據(jù)表等。它們按照功能
17、分別排列在Component Panel的各頁上。挪動鼠標到Component Panel上,在部件按鈕上"猶豫"一、兩秒鐘,一個黃色小提示框就會彈出,寫有該部件的名稱,我們稱之為提示Hint。在要選擇的部件上單擊左鍵,那么該部件按鈕被按下,表示部件已被當前選擇。然后,將鼠標挪動到窗體上,按下左鍵,該部件被放到窗體中。部件的輪廓線上會顯現(xiàn)八個被稱為尺寸調(diào)整器Sizing Handles的黑色小方塊。它除了供用戶調(diào)整尺寸使用之外,還可以表示該對象處于當前編輯狀態(tài)。此時,按"Delete"鍵可以將該部件刪除。在Component Panel上,點動寫有&qu
18、ot;Additional"的頁標簽,切換到Additional頁,再挪動鼠標,逐個用觀看Hint的方法查看部件的名稱,找到"Shape"部件其圖標為圓、方形、三角形三個幾何體,將其放到窗體的左方。再按動"Standard"頁標簽,找到"Button"部件圖標上畫有OK按鈕。Delphi允許在添加多個同類型的部件時,不必每次到部件選項板上選取。按住"Shift"鍵,同時在"Button"部件上單擊鼠標左鍵,這時"Button"部件處于按下狀態(tài),并有藍色邊框,表示已經(jīng)
19、被選擇固定。依次在窗體右方的三個位置單擊左鍵,那么會放置三個一樣的Button部件。把鼠標光標移到部件選項板左側(cè)的箭頭圖標處,這是"取消選擇"按鈕,它沒有提示。按動它,會發(fā)現(xiàn)"Button"部件按鈕恢復彈起狀態(tài)。否那么,每次"Form1"上的鼠標單擊左鍵動作,都會導致增加一個按鈕部件。再次進入"Additional"部件頁,選擇一個"BitBtn"按鈕圖標是有綠色對號的OK按鈕,把它放到其它三個按鈕部件的下面。點動"Dialog"頁標簽,選擇以16色網(wǎng)格做圖標的ColorDi
20、alog部件并把它放到窗體的任意位置。因為這一部件是不可視部件,所以它的位置并不影響大局。1.2.3.2部件的調(diào)整與對齊一般來講,此時放置到窗體的部件是分散排列的,而且其大小不是真正需要的尺寸。除了不可視的ColorDialog部件外,其它的部件都需要進展位置、大小和顯示字樣的調(diào)整。Delphi提供的對齊工具和窗口柵格為這些調(diào)整提供了方便。1、挪動部件只需把鼠標落到想挪動的部件上,按住左鍵并挪動光標,到適宜的位置再釋放左鍵,整個部件即被移到新位置。2、調(diào)整尺寸先把鼠標光標挪動到要改變尺寸的部件上,單擊左鍵,選中該部件,尺寸調(diào)整器會出現(xiàn),把鼠標挪動到其中的一個小黑色方塊上,當鼠標變成拖動方向指示
21、時,按下并拖動鼠標左鍵,可以放大或縮小部件。上下左右的小方塊用來挪動對應的各邊,四個角的方塊可以挪動相連的兩條邊。假設(shè)要準確地表述部件的尺寸,可以在Object Inspector上,改變Left表示部件左邊緣到窗體左邊框的象素點數(shù)、Top表示窗體上邊框到部件上邊緣的象素點數(shù)、Width部件本身的寬度、Height部件本身的高度等屬性。關(guān)于改變部件的屬性,下文還將仔細講解。3、使得一組部件對齊用調(diào)整位置的方法可以對齊部件,但操作步驟復雜。Delphi提供的對齊工具可以使多個部件的對齊極為迅速方便。下面我們來使四個按鈕對齊。先將四個按鈕選為一組:按住并向右下方拖動鼠標左鍵,在窗體上畫出圍繞四個按
22、鈕的矩形,釋放左鍵后,被選中的按鈕周邊會出現(xiàn)暗灰色的邊框。選用Edit|Align命令,或使用彈出式菜單在被固定的部件上單擊鼠標右鍵激活,可以顯示圖1.4所示的對話框。要使按鈕沿左邊對齊并使它們在垂直方向上均勻分布,先在Alignment對話框的Horizontal欄內(nèi)選擇"Left sides",在"Vertical"欄內(nèi)選擇"Space equally",按動OK按鈕,Delphi就會自動將它們對齊。然后,您可以將它們四個作為一組來挪動。在四個按鈕以外的窗體上按動鼠標左鍵,就釋放了組中的部件,使它們成為分立的部件。利用對齊模板來對
23、齊部件也是很方便的。首先要將要對齊的部件選成一組,選擇View|Alignment Palette顯示對齊模板。按照所示的方式選擇即可到達對齊的目的4、鎖定部件假設(shè)部件已經(jīng)對齊,為防止不小心挪動部件,可以將部件位置鎖定。選擇主菜單上的Edit|Lock Controls選項,使得部件不能進展挪動操作。解鎖只需再次選擇此項即可。調(diào)整"Shape"部件的大小,使之與右邊的按鈕組相匹配。再改變窗體的大小,按住并拖動窗體右下方使之剛好包容窗體上的全部部件。這樣,您的用戶界面就會比較美觀。1.2.3.3保存所做的工作及時地保存所做的工作至關(guān)重要。對設(shè)計者來講,有兩個文件需要保存:庫單
24、元文件以.PAS為后綴和工程文件以.DPR為后綴。從主菜單上選擇File|Save Project As.項,Delphi會顯示標題為"Save Unit1 As"的文件保存對話框,Delphi 2.0允許用戶更改存儲途徑,您可以在下拉式列表框中選擇。最好將您的文件保存在自己的目錄中。在編輯框中鍵入demoform.pas以保存庫單元文件;然后顯示標題為"Save Project As"的另一個文件保存對話框,鍵入sample.dpr。Delphi保存這兩個文件并返回窗體窗口。不要把庫單元和工程存成一樣的文件名,Delphi要求兩者不同。第一次保存后,以
25、后可以隨時通過Speed Bar中的"Save All"和"Save file"來保存工程文件和庫單元文件。一般來講,當確認文件的改變后,要同時存儲這兩個文件。1.2.3.4運行工程以上的操作使您有了一個自己的應用程序界面。在速度條中按動"Run"按鈕繪有綠色三角圖標,您可以看到,所生成的界面與您設(shè)計的界面是完全一致的。1.2.4改變對象的屬性上述的工程雖可以運行,但它對您的按動按鈕操作是沒有什么反響的,而且,所有部件上還寫著我們不需要的字樣。雙擊窗口的關(guān)閉按鈕完畢運行,回到設(shè)計界面。下面,我們將仔細講述如何在Object Inspe
26、ctor中改變部件的各種屬性。1.2.4.1用Properties頁改變部件的屬性值首先要改變各種部件的標題。先給窗口命名為"Demo"。按動Object Inspector上端的Object Selector的題條或者其右端的下拉標志,找到Form1項,并點動左鍵,窗體被選中。在Object Inspector的Properties頁中,找到Caption屬性并用左鍵選中,將其右端的Form1改為Demo,同時,您會發(fā)現(xiàn)窗體的標題已經(jīng)相應地做了改變。用鼠標點中窗體中的Shape部件,Object Inspector列出了它的屬性。選中Shape屬性,您會發(fā)現(xiàn)右端出現(xiàn)了下拉
27、標志。點動這一標志,可以查看對象的Shape屬性可選值。它的形狀可以是矩形、圓形、圓角矩形、方形等幾種。這是我們設(shè)計后續(xù)功能的根底。選中Button1按鈕,此時Object Inspector已經(jīng)顯示出此按鈕的一應屬性。將它的Caption屬性改為"&Rectangle","&"號使得Delphi特殊處理它后面的字符,在這里,按鈕中的R字母被做了下劃線處理,運行時,可以用"Alt-R"熱鍵來按動這一按鈕。同樣,您可以將其它的兩個按鈕Button2和Button3的Caption屬性改成需要的形狀指示,譬如"&
28、amp;RoundRec"、"&Ellipse"。1.2.4.2設(shè)置窗體的缺省按鈕可以把某個按鈕作為窗口上的缺省按鈕,Delphi會為按鈕加上有黑色的邊緣。運行時,回車即相當于被按下。只需將此按鈕的Default屬性從False改成True,即將它設(shè)為窗體的缺省按鈕。點動Default屬性,在右端的值后面雙擊左鍵,或從下拉菜單中選取True,即可改變這一屬性。Delphi中有許多只有True、False兩個屬性的部件,雙擊左鍵可以在這兩個值之間切換。1.2.4.3漢化界面及字體選取假設(shè)您的Windows95系統(tǒng)中安裝了中文系統(tǒng),對界面做漢化是極其方便的。例
29、如,您可以將Button1的Caption屬性改成"&R矩形",同樣地可改變其它部件的屬性,將窗體做成中文的操作界面。假設(shè)對中、西文字體不滿意,那么可以調(diào)整Font屬性以滿足您的要求。Font屬性的前面,有一個小小的"+"號,這說明它表征的是集屬性,也即屬性不再是一個單值,而是一個屬性的集合。雙擊Font,Object Inspector將在下面擴大顯示它的其它屬性。Color用來表示文本的顏色,Name定義了字體名,如System,MsSerif,Arial,宋體,黑體等。Style下又擁有四個屬性:fsBold,fsItalic,fsUnde
30、rline和fsTrikeOut。假設(shè)想讓字體有其中的某種風格,可把相應的屬性值設(shè)成True。Font對話框可以更為直接地設(shè)定以上屬性。Font屬性右側(cè)值段有帶省略號的按鈕,單擊它可以激活Font對話框,如圖1.7所示:這一對話框中包含了上述的全部屬性,使得調(diào)整字形更為直接方便。但要申明的是,對于窗體Form來講,F(xiàn)ont屬性改變的是窗體中其它部件的顯示字形,它本身的標題字體是缺省的System字體,不能通過屬性來改變。1.2.4.4使用圖形編輯對話框最后,我們用圖標按鈕BitBtn1來控制Shape部件的顏色。選中圖標按鈕,將它的Caption屬性改為"&Color&quo
31、t;或"&C顏色"??梢栽诎粹o中參加一個圖標來形象地表述它的功能。選用Object Inspector中的Glyph屬性,點動值段的三點按鈕,彈出圖形編輯對話框。您可以通過圖形編輯對話框裝入圖標,在本例程中,按動Load按鈕,選擇Delphi 2.0ImagesButtonsBrush.bmp文件裝入,Bitbtn1就成為一個圖標按鈕。另外,Delphi還為您提供了豐富的Windows標準圖標按鈕。想運用它們,改變BitBtn的Kind屬性。用戶不妨嘗試一下,選擇其它值可以生成漂亮的標準按鈕,如OK,Cancel等等。這會使您在以后的程序開發(fā)中受益匪淺。至此,界面的
32、設(shè)計工作就已完成了。運行一下觀察效果,別忘記保存您的庫單元文件、工程文件。1.2.5編寫事件處理過程完成用戶界面,只是建立了一個"骨架",下面要做的便是給程序參加"靈魂",也即,使它可以完成所要求的功能。1.2.5.1為用戶操作建立"事件"單擊窗體上的"Rectangle"按鈕,在Object Inspector中,點動"Events"頁標簽,出現(xiàn)事件窗口。在本例程中,我們只關(guān)心OnClick事件,即按鈕接收到左鍵單擊時應用程序所作出的反響。在Object Inspector窗口中雙擊OnCli
33、ck事件右端的值段,會使得Delphi激活庫代碼編輯器,并將光標停在該按鈕所對應的過程的begin.end之間。"Rectangle"按鈕的功能是使Shape部件的形狀為矩形。聯(lián)絡(luò)前文我們查看過的Shape部件的"Shape"屬性,如今,我們要做的是在程序中控制部件的屬性。在光標處鍵入以下的程序段:Shape1.Shape:=stRectangle;用同樣的方法,在Button2和Button3的OnClick事件響應內(nèi)復制以上語句,并分別將賦值號后的屬性值改為stRoundRect和stEllipse。為防止輸入錯誤導致程序運行出錯,建議您使Shape
34、1部件的Object Inspector可見,檢視屬性Shape的各個值并對應輸入。在代碼編輯器中,Delphi自動建立的過程以關(guān)鍵字Procedure開頭,用戶可以在beginend之間參加自己的程序,也可以定義變量。這個程序塊對用戶的外部事件此例中是按動按鈕進展響應。我們稱之為事件處理過程。1.2.5.2使用顏色編輯對話框圖標按鈕"Color"要控制部件Shape1的顏色,我們可以調(diào)入顏色編輯對話框,用以選擇要變成的顏色。這時就要用到運行時不可視的部件ColorDialog了。同樣地使圖標按鈕BitBtn1響應OnClick事件,在它的過程中參加以下的語句:ColorD
35、ialog1.Execute;Shape1.Brush.Color:=ColorDialog1.Color;這樣,圖標按鈕的功能也就完成了。初學者可能對這樣的程序段不能理解。其實也是非常簡單的。查看ColorDialog的Brush屬性,就會發(fā)現(xiàn)它是個集屬性,在其下還有一個Color選項,正是我們想改變的屬性。既然我們想將圖形的顏色變得更加豐富多彩,它本身提供的幾種顏色就已不能滿足要求了。用顏色編輯器可以得到更多的色彩。程序的第一句用Execute方法,使得ColorDialog運行它本身。當用戶在對話框中進展操作,選定了一種顏色時,即使得TColorDialog對象的一個屬性Color置為選
36、定顏色的值。將此值賦給Shape1的Brush屬性的子屬性Color,就將選定的顏色加到了圖形上。讀者的要求可能會是,怎樣盡快的理解這些這些方法、屬性和域呢?下文對使用聯(lián)機幫助的簡單介紹可能會對您有所裨益。1.2.6使用聯(lián)機幫助Help事實上,使用聯(lián)機幫助是您全面地理解可用的方法、對象的域、屬性等信息的最快捷途徑。您還可以參考Delphi給定的例程。較為簡單有效的方法是使用Help中的搜索功能。假設(shè)您對一個對象知之甚少,選用主菜單中的Help|Help Topics項,在彈出的幫助對話框,選用Indexes"索引"頁,Delphi 2.0會提示您輸入要檢索的主題。以您想用的
37、部件的對象名作為檢索主題詞,可以參閱很多根本的信息。例如,上文的例程中,在編輯框中鍵入對象的名稱TColorDialog,在詞條中就會出現(xiàn)該主題,按動Display按鈕顯示出TColorDialog的幫助信息。查看method,可以找到能應用在CclorDialog1上的方法Execute;仔細閱讀它的功能,上述的編程便不難理解了。Properties中提供了部件的所有屬性,在關(guān)鍵屬性Key Properties前加上了"金鑰匙",提供了詳盡的說明。在Task中您可以查閱該對象的其它相關(guān)主題,還可以參閱Example中的應用例程。用幫助窗口的Edit各種功能進展復制、剪貼等
38、操作。假設(shè)您已經(jīng)對對象有一定的理解,想查閱它的詳細方法、域等,可以直接用主題詞進展檢索。以上,我們已經(jīng)完成了簡單的例程。運行您的程序,選用各個按鈕改變圖形的顏色和形狀。如圖1.9所示。雖然它只是一個"小玩具",卻直觀地給您一個用Delphi編程的印象。比照一下您親手編制的程序量和程序的功能,您就會理解Delphi為程序員提供了怎樣的方便。1.3 Delphi 2.0的可視化部件用法簡介本節(jié)中,我們將較為深化地講解Delphi的部件。這是編制大型復雜應用程序的必由之路。下面,我們將對各種部件分類進展簡單的介紹,以便于您在編程時可以較快地理解有哪些部件可能會滿足您的要求,并對其
39、重要的方法、屬性等有一個大致的理解。根本技巧、工具的介紹在本章的第4節(jié)中,交互閱讀這兩部分,多創(chuàng)制幾個試驗程序,有助于您迅速進入Delphi世界,盡早將這一精妙軟件用于實際工作中。1.3.1常用的文本相關(guān)部件以下的部件以各種格式顯示文本,其中有些是文本和數(shù)據(jù)輸入的途徑。它們是Label標簽、Edit文本編輯、MaskEdit格式編輯、Memo備注、List Box列表框、Combo Box組合框。除了MaskEdit在Additional頁之外,其它的都在Standard頁中。1.3.1.1 Label部件Label標簽一般放在對象的旁邊,用來標記這些對象,從而對用戶的操作進展提示,也可以用來
40、顯示其它信息。您可以在標簽中設(shè)置熱鍵,也即在Caption屬性值段中輸入含有"&"的字串,當用戶使用"Alt+關(guān)鍵字母"時,將自動選中它所指向的對象。方法是設(shè)置Label部件的FocusControl屬性,在值段中,選用與它關(guān)聯(lián)對象的對象名。1.3.1.2 Edit、MaskEdit和Memo部件Edit、MaskEdit、Memo部件都是用作接收、顯示用戶輸入文本的。它們具有一些一樣的屬性。ReadOnly在運行時間內(nèi)控制對象是否可以進展Windows的操作,當此值為False時,該框內(nèi)的文本就不能被復制到剪貼板上。MaxLength可以設(shè)置輸
41、入文本的長度限制。用PasswordChar屬性可以按照顯示隱蔽密碼的方法顯示用戶輸入文本,例如,它的缺省值為"*",運行時,您的輸入將用"*"來顯示,從而提供了一種平安措施。您可能也發(fā)現(xiàn)了,當一個字段被加上高亮度顯示時,按鍵操作會將這一字段刪除,交換成當前的鍵盤輸入。這種設(shè)置為操作提供了方便,您不必每次先刪除原來的文本;但也可能會導致誤刪文本。將AutoSelect屬性設(shè)置成False,這種替代功能就被取消了。MaskEdit是格式文本輸入對象。它的EditMask屬性為它提供了過濾文本的格式。點動這一屬性的省略按鈕,會彈出過濾編輯對話框,除了Delp
42、hi為您提供的幾種屏蔽格式,您也可以自己編寫,查閱"幫助",會為您提供更詳細的用法介紹。Memo是備注框,與以上對象不同的是,它可以接收多行文本輸入。將ScrollBars設(shè)置成ssVertical,可以為它加上一個垂直的滾行條。Align屬性調(diào)整該對象在窗口中的對齊情況,有alNone無對齊指定、alBottom底部對齊、alClient全窗口顯示等可以選擇;而Alignment屬性那么決定了文本在框中的對齊顯示格式。Lines屬性訪問的文本被存儲在一個TStrings對象中,按動它的省略按鈕,可以通過對話框向它增加文本,也可以用程序?qū)@一屬性進展操作,以到達修改或增加備
43、注文本的目的。1.3.1.3 List Box和Combo Box部件List Box列表框和Combo Box組合框都顯示列表工程,所不同的是組合框占用較少的空間。常見的Windows操作系統(tǒng)中,顯示可用磁盤驅(qū)動器時,用的就是組合框。列表框那么提供了一個工程列表以供選擇,如Windows翻開文件操作時顯示文件列表的就是List Box。以下程序段將Edit1的文本參加到ListBox1中,并清空Edit1中的文本:procedure TForm1.AddButtonClickSender:TObject;begin ListBox1.Items.AddEdit1.text;Edit1.Tex
44、t:='';end;常見的組合框初始化用以下的語句可以實現(xiàn),它用下拉式列表框的第一項來初始化組合框的缺省值:procedure TForm1 boBox1TextSender:TObject;begin if ComboBox1.Text=''then ComboBox1.Text:=ComboBox1.Items.String1;end;以上就是文本輸入的根本部件。1.3.2按鈕和檢查框部件1.3.2.1 Button和BitBtn部件按鈕是Windows常用的部件,前文的例程中我們已經(jīng)根本掌握了Button和BitBtn的主要用法。它們一般用在對話框中,做為
45、執(zhí)行某種功能的指示。您也可以為它們設(shè)置內(nèi)置返回功能,將ModelResult屬性加以匹配,可以不用編程,直接實現(xiàn)系統(tǒng)內(nèi)置的功能,這一點上和Kind屬性頗類似。1.3.2.2 Speed Button部件Speed Button加速按鈕部件在Additional頁上,是進展工具條快速設(shè)計的理想部件。它只有一個位圖,沒有標題。需要提起讀者注意的是,用多個Speed Button制作一個工具條時,必須先放置一個窗口類部件,如Panel操作板、Group Box群組框等。否那么試圖將加速按鈕先制作好再移上去,您會發(fā)現(xiàn)它會總是處于窗口類部件下面不可見。當然,您可以對加速按鈕進展復制、粘貼到窗口類部件上處理,那就另當別論了。1.3.2.3 Check Box與Radio Button部件Check Box檢查框和Radio Button無線按鈕部件通常是相提并論的,多用作接收用戶"是"或"否"的輸入判別。它們一般都是成組的放置在Radio Group或Group Box部件
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- Unit2 My schoolbag (Part C)(說課稿)-2024-2025學年人教PEP版英語四年級上冊
- Unit 1 Life Choices Lesson 3 Your Life Is What You Make It 說課稿-2024-2025學年高中英語北師大版(2019)必修第一冊
- 2025宅基地的買賣合同協(xié)議書
- 2024六年級英語上冊 Unit 3 My weekend plan課時3 Let's try Let's talk說課稿 人教PEP
- 2024-2025學年高中數(shù)學 開學第一周 第一章 集合與函數(shù)概念 1.1.1 集合的含義與表示 第一課時 集合的含義說課稿 新人教A版必修1
- 26手術(shù)臺就是陣地 (說課稿)-2024-2025學年三年級上冊語文統(tǒng)編版
- 2025冷庫銷售合同范本
- 影視企業(yè)簽訂業(yè)績承諾協(xié)議的財務風險控制研究
- Unit 1 Let's be friends!(說課稿)-2024-2025學年外研版(三起)(2024)英語三年級上冊
- 水景池維修施工方案
- 2024-2030年中國輕型運動飛機行業(yè)市場發(fā)展趨勢與前景展望戰(zhàn)略分析報告
- 暑假作業(yè) 09 高二英語閱讀七選五20篇(原卷版)-【暑假分層作業(yè)】2024年高二英語暑假培優(yōu)練(人教版2019)
- 2024年湖南環(huán)境生物職業(yè)技術(shù)學院單招職業(yè)適應性測試題庫含答案
- 20以內(nèi)的加減法練習題1000道
- 電纜銷售年終工作總結(jié)與計劃
- (完整)三年級數(shù)學口算題300道(直接打印)
- TB 10012-2019 鐵路工程地質(zhì)勘察規(guī)范
- 新蘇教版三年級下冊科學全冊知識點(背誦用)
- 【良心出品】架空輸電線路巡視內(nèi)容
- 10000以內(nèi)加減法混合豎式題
- 2024年新華文軒出版?zhèn)髅焦煞萦邢薰菊衅腹P試參考題庫含答案解析
評論
0/150
提交評論