CBuilder開發(fā)環(huán)境ppt課件_第1頁
CBuilder開發(fā)環(huán)境ppt課件_第2頁
CBuilder開發(fā)環(huán)境ppt課件_第3頁
CBuilder開發(fā)環(huán)境ppt課件_第4頁
CBuilder開發(fā)環(huán)境ppt課件_第5頁
已閱讀5頁,還剩138頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、第1章 C+Builder開發(fā)環(huán)境 1.1 C+Builder概覽 1.2 C+言語簡介 1.3 C+Builder集成開發(fā)環(huán)境 習(xí)題 1.1 C+Builder概覽 C+Builder 是Borland(Inprise)公司開發(fā)的Windows下可視化的C+編程環(huán)境,它常被簡稱為BCB(分別取Borland、C+、Builder的第一個(gè)字母)或CB。BCB不僅功能強(qiáng)大,而且學(xué)習(xí)簡單、運(yùn)用方便,深受軟件開發(fā)人員的喜歡。C+Builder目前的最新版本是6.0版。 1.1.1 Windows環(huán)境下的快速開發(fā)工具 有一句話在軟件開發(fā)人員之間流傳很廣,并且在流傳過程中構(gòu)成了假設(shè)干不同的版本。這句話的

2、上半句是“真正的程序員用C+,下半句那么是“聰明的程序員用X。X在這句話的不同版本中分別為VB、Delphi、PB等。有人覺得對(duì)于這種“X王婆賣瓜式的自詡,無需當(dāng)真,但依筆者看卻未必。由于VB、Delphi、PB等開發(fā)工具之間有一個(gè)共同之處,即它們都是RAD(Rapid Application Development,快速開發(fā)工具)。 因此,假設(shè)站在比較公正的立場(chǎng)來說,這后半句應(yīng)該是“聰明的程序員用RAD。此說法假設(shè)能成立,那么一個(gè)必然的推論就是:“真正的并且聰明的程序員應(yīng)該用基于C+的RAD。按照該規(guī)范選擇編程環(huán)境,就目前來說,無疑應(yīng)該首選Borland公司的C+Builder。 傳統(tǒng)的“軟

3、件工程提倡“先設(shè)計(jì),后編程,設(shè)計(jì)一旦完成,那么不允許做過多修正。這種設(shè)計(jì)原那么固然有其合理的一面,但嚴(yán)重制約了開發(fā)效率。對(duì)于某些開場(chǎng)時(shí)對(duì)需求并不非常清楚的運(yùn)用工程,假設(shè)按此辦理那么往往將開發(fā)人員逼入窘境?!翱焖僭头ɑ騌AD那么反其道而行之,它把設(shè)計(jì)看成需經(jīng)多次反復(fù)才干完成的任務(wù):對(duì)一個(gè)工程的初步分析完成后,即據(jù)此開發(fā)出一個(gè)程序“原型;然后與用戶一同對(duì)該“原型進(jìn)展評(píng)價(jià),找出缺乏,修正設(shè)計(jì)后再產(chǎn)生程序。 這一過程可反復(fù)多次,直到所開發(fā)的系統(tǒng)到達(dá)用戶要求為止。但要有效實(shí)現(xiàn)RAD,必需擁有優(yōu)良的編程環(huán)境和代碼生成工具,由于BCB具有可視化、面向?qū)ο蟮忍匦?,特別適宜作為Windows下企業(yè)級(jí)運(yùn)用的RA

4、D開發(fā)環(huán)境運(yùn)用。目前,稱得上RAD的產(chǎn)品有VB、Delphi、C+Builder、PB、VFP等。相對(duì)于VB等“解釋型的言語來說,Delphi、BCB 這些以“編譯型的言語為根底的RAD編程環(huán)境效率較高,功能也更強(qiáng)大。 作為一個(gè)RAD開發(fā)環(huán)境,BCB 對(duì)Windows和Internet上的各種流行技術(shù)都提供了充分的支持,C+Builder 6.0 在先前版本根底上又添加了許多新的功能和特性。它具有很強(qiáng)的圖形、圖像和多媒體處置功能;對(duì)Windows下的OLE、COM、ActiveX技術(shù)提供了很好的支持;在數(shù)據(jù)庫編程方面,BCB提供了各種銜接方案以及多層分布式數(shù)據(jù)處置等先進(jìn)技術(shù);在Internet

5、和Intranet編程方面,BCB提供了Socket組件和Internet Express、Web Snap等技術(shù)。 BCB的另一優(yōu)點(diǎn)是具有極強(qiáng)的兼容才干,它可以編譯銜接Turbo C、Borland C+、VC+、Delphi等工具開發(fā)的源代碼或目的模塊。 1.1.2 C+編譯器 作為第四代編程環(huán)境,BCB具有一定的代碼自動(dòng)生成的才干,但仍需人工編寫部分程序代碼,這些代碼必需用C+言語寫成。因此,BCB可被看作是Windows下一個(gè)功能強(qiáng)大的C+編譯器,它支持ANSI C+ 規(guī)范并在運(yùn)用部件技術(shù)等方面作了擴(kuò)展。BCB具有編譯速度快等優(yōu)點(diǎn),經(jīng)BCB編譯后產(chǎn)生的目的文件尺寸小、效率高,可直接在W

6、indows環(huán)境下運(yùn)轉(zhuǎn)。 C+ 是在C言語根底上擴(kuò)展而成的一種編程言語,它具有C言語緊湊、高效等優(yōu)點(diǎn)并支持面向?qū)ο蟪绦蛟O(shè)計(jì)的技術(shù),本書第2章將簡單引見C+言語和面向?qū)ο蟪绦蛟O(shè)計(jì)。對(duì)已初步掌握C言語的讀者來說,只需對(duì)面向?qū)ο蟪绦蛟O(shè)計(jì)的有關(guān)概念稍有了解,就能運(yùn)用BCB編寫簡單程序了。當(dāng)然,要運(yùn)用BCB編寫復(fù)雜的、高質(zhì)量的程序,就必需對(duì)所運(yùn)用的C+言語的各種特性有深化了解。我們以為,掌握C+ 和面向?qū)ο蟪绦蛟O(shè)計(jì)是一個(gè)從實(shí)際中學(xué)習(xí)的循序漸進(jìn)的過程,本書會(huì)提供一個(gè)很好的起點(diǎn)。 1.1.3 C+Builder的安裝和啟動(dòng) C+Builder 6.0有普通版和Client/Server版,通常用光盤安裝。它

7、對(duì)硬件的最低要求并不高,但為了運(yùn)用效果好一點(diǎn),我們建議采用如下根本硬件配置: (1) CPU為Pentium II 350以上; (2) 內(nèi)存128 MB以上; (3) 硬盤總?cè)萘?0 GB以上,可用空間1 GB以上,其中安裝BCB約用去600 MB以上。 BCB應(yīng)安裝在32位的Windows上,它們包括Windows 95、Windows 98、Windows 2000、Windows NT 4.0、Windows Me以及Windows XP等。 執(zhí)行光盤上的Setup程序進(jìn)展安裝,主要步驟有: (1) 按提示輸入軟件的序列號(hào)和密碼; (2) 選擇安裝方式,安裝方式有Typical、Com

8、pact和Custom,當(dāng)硬盤空間充足時(shí)可選Typical,否那么選Compact,有閱歷的用戶也可選Custom; (3) 選擇安裝目錄,普通可采用由安裝程序建議的目錄。 安裝終了后,在“開場(chǎng)菜單的“程序項(xiàng)下新添了一項(xiàng)“Borland C+Builder 6,點(diǎn)擊該項(xiàng)即能啟動(dòng)C+Builder 6.0。啟動(dòng)后的界面如圖1-1所示。圖 1-1 啟動(dòng)BCB后的畫面 1.1.4 一個(gè)簡單的程序 為了讓讀者盡早了解在BCB下編程是怎樣回事,我們?cè)诒竟?jié)給出一個(gè)簡單的“Hello,World!程序。該程序運(yùn)轉(zhuǎn)時(shí)顯示一個(gè)窗口,窗口內(nèi)有一個(gè)命令按鈕,當(dāng)按鈕被點(diǎn)擊時(shí),窗口的標(biāo)題顯示為“Hello,World!

9、。 下面,我們?cè)敿?xì)給出在BCB下編制該程序的每一步。 (1) 啟動(dòng)BCB,出現(xiàn)如圖1-1所示的界面。此時(shí)編程環(huán)境中已存在一個(gè)運(yùn)用程序的框架,顯示在該圖右下方的標(biāo)題為Form1的一個(gè)空白的窗口即是該運(yùn)用程序的窗口,習(xí)慣上我們稱它為窗體。 (2) 點(diǎn)擊控件面板上按鈕圖案選取按鈕控件,然后在運(yùn)用程序窗體中選擇適當(dāng)位置將按鈕放到該空白窗體上,如圖1-2和圖1-3所示。 (3) 在窗體內(nèi)選中按鈕,然后在對(duì)象檢閱器內(nèi)編輯按鈕Button1屬性。如圖1-4所示,我們把按鈕的Caption屬性改為“Hello。這使得窗體中按鈕的標(biāo)題也變?yōu)椤癏ello。圖1-2 點(diǎn)擊面板上按鈕控件圖1-3 將按鈕放入窗體 圖1

10、-4 修正按鈕的標(biāo)題 (4) 雙擊窗體中標(biāo)題為Hello的按鈕,BCB自動(dòng)為該按鈕的單擊事件建立了相應(yīng)的處置程序(方法)TForm1:Button1Click的框架,此時(shí)代碼編輯窗口被激活,文本插入點(diǎn)處有如下代碼: void _fastcall TForm1:Button1Click(TObject *Sender) 這正是TForm1:Button1Click事件代碼的框架。在一對(duì)大括號(hào)內(nèi)可以由用戶輸入C+的代碼,這些代碼將在該按鈕被單擊(Click)時(shí)執(zhí)行。在本例中,我們輸入:Form1-Caption=Hello, World!; 即使得TForm1:Button1Click事件有如下代

11、碼: void _fastcall TForm1:Button1Click(TObject *Sender) Form1-Caption=Hello,World!; (5) 點(diǎn)擊位于BCB界面左上方的工具欄上標(biāo)有綠色箭頭的那個(gè)按鈕,就可以編譯、運(yùn)轉(zhuǎn)該程序了。假設(shè)一切順利,程序運(yùn)轉(zhuǎn)后,按下“Hello按鈕,窗口的標(biāo)題就會(huì)變?yōu)椤癏ello,World!,如圖1-5所示。 至此,我們的第一個(gè)Windows運(yùn)用程序已編制完成,當(dāng)然這個(gè)程序的功能太簡單了。但請(qǐng)記住,我們有了一個(gè)很好的程序框架,在此根底上添加一點(diǎn)功能并不是難事。 最后,我們還要引見如何將已完成的程序保管。BCB將一個(gè)完好的運(yùn)用程序稱為工程

12、,它由假設(shè)干文件組成,保管一個(gè)工程也就是要將該工程的一切文件存盤。圖1-5 Hello程序運(yùn)轉(zhuǎn)時(shí)的畫面圖1-6 保管單元文件 通常,應(yīng)該為工程建立一個(gè)文件夾用于保管該工程的文件。我們?yōu)椤癏ello程序的工程建立的文件夾,可以取名為Hello。在BCB中執(zhí)行菜單命令FileSave All。此時(shí),會(huì)彈出如圖1-6所示的保管單元文件對(duì)話框。在標(biāo)有“保管在標(biāo)簽的組合框內(nèi)選中Hello文件夾,在“文件名文本框內(nèi)更改文件名,最后按“確認(rèn)按鈕保管文件。由于Save All是保管工程的一切文件,因此普通會(huì)出現(xiàn)兩次保管文件對(duì)話框:第一次,要求保管與程序主窗體Form1對(duì)應(yīng)的代碼單元文件,它的默許文件名是Uni

13、t1;第二次,要求保管工程文件,它的默許文件名是Project1(對(duì)于初學(xué)者,最好采用默許的文件名)。 回到Windows下,看看Hello文件夾內(nèi)有哪些文件。我們會(huì)發(fā)現(xiàn)至少有六個(gè)文件:Project1.bpr,Project1.cpp,Project1.res,Unit1.cpp,Unit1.dfm和Unit1.h。這些文件可看作是“Hello工程的源文件,假設(shè)我們?cè)诒9芄こ毯笤龠\(yùn)轉(zhuǎn)一次程序,就會(huì)發(fā)現(xiàn)Hello文件夾內(nèi)又添加了四個(gè)文件:Project1.obj,Project1.exe,Project1.tds和Unit1.obj。其中的Project1.exe可脫離BCB在Windows下

14、運(yùn)轉(zhuǎn),它的大小僅為25 KB。由于這四個(gè)文件可以經(jīng)過編譯生成,當(dāng)磁盤空間緊缺時(shí)(例如,當(dāng)需求保管到軟盤時(shí))可將它們刪除,特別是Project1.tds文件,它的尺寸很大。1.2 C+言語簡介 如前所述,BCB運(yùn)用C+作為編程言語。C+言語是在C言語的根底上擴(kuò)展而成的,它具有C言語緊湊、高效等優(yōu)點(diǎn)并支持面向?qū)ο蟪绦蛟O(shè)計(jì)技術(shù)。本書假定讀者已具有運(yùn)用C言語編程的根底知識(shí),我們?cè)诖烁咨弦妼W(xué)習(xí)本書時(shí)所需的C+知識(shí)。 1.2.1 面向?qū)ο蟪绦蛟O(shè)計(jì) 自20世紀(jì)80年代以來,面向?qū)ο蟮募夹g(shù)引起了計(jì)算機(jī)界的極大關(guān)注。隨著面向?qū)ο蟪绦蛟O(shè)計(jì)言語的漸趨成熟,作為一種新的程序設(shè)計(jì)風(fēng)格,其運(yùn)用也得到了迅速開展。 面向

15、對(duì)象是一種對(duì)應(yīng)于真實(shí)世界概念化的籠統(tǒng)思想方法,面向?qū)ο蠓椒ǖ母境霭l(fā)點(diǎn)就是按照人類認(rèn)識(shí)世界的方法和思想方式來分析和處理問題的。在面向?qū)ο蟮南到y(tǒng)中,對(duì)象(Object)是一個(gè)封裝了數(shù)據(jù)屬性和操作行為的實(shí)體。數(shù)據(jù)描畫了對(duì)象的形狀,操作可支配私有數(shù)據(jù),改動(dòng)對(duì)象的形狀。對(duì)象內(nèi)的操作通常叫做方法,對(duì)象之間進(jìn)展通訊的一種構(gòu)造叫做音訊。 在面向?qū)ο笙到y(tǒng)中,人們并不是逐個(gè)地描畫各個(gè)詳細(xì)的對(duì)象,而是將留意力集中于具有一樣特性的一類事物,籠統(tǒng)出這樣一類事物的共同構(gòu)造和行為。類(Class)是對(duì)對(duì)象的籠統(tǒng)及描畫,是具有共同屬性和操作的多個(gè)對(duì)象的類似特性的一致描畫體,類中的每個(gè)對(duì)象都是該類的實(shí)例。由于類描畫了數(shù)據(jù)構(gòu)造

16、(對(duì)象屬性)、算法(方法)和外部接口(音訊協(xié)議),因此,類提供了完好的處理問題的才干。 在類的描畫中,每個(gè)類要有一個(gè)名字,要能表示一組對(duì)象的共同特征,還必需給出一個(gè)生成對(duì)象實(shí)例的詳細(xì)方法。類不是孤立的,類與類之間有各種關(guān)系。其中,特別重要的是層次關(guān)系,即可以有父類與子類,它們之間有派生和承繼的關(guān)系,承繼關(guān)系具有傳送性。在收到音訊時(shí),對(duì)象要予以呼應(yīng)。不同的對(duì)象收到同一音訊可產(chǎn)生完全不同的結(jié)果,這一景象叫做多態(tài),多態(tài)的實(shí)現(xiàn)依賴于承繼性。 要設(shè)計(jì)一個(gè)有意義的類并非易事,但一旦設(shè)計(jì)完成,就能在程序中被反復(fù)運(yùn)用。因此,一個(gè)成熟的面向?qū)ο蟮木幊汰h(huán)境往往會(huì)提供一組精心設(shè)計(jì)而成的類供用戶運(yùn)用,以提高軟件開發(fā)的

17、效率和質(zhì)量,普通稱這樣的一組類為類庫。C+Builder提供的類庫名為VCL,而VC+那么提供了一個(gè)叫做MFC的類庫。 面向?qū)ο蟪绦蛟O(shè)計(jì)的概念提出來以后,某些公司和機(jī)構(gòu)曾經(jīng)開發(fā)出一些純粹的面向?qū)ο笤O(shè)計(jì)言語,如Smalltalk、Ada等,但是由于種種緣由,這些言語沒可以廣泛地流行起來。從本質(zhì)上來講,我們今天所廣泛采用的面向?qū)ο蟮脑O(shè)計(jì)言語C+并不是一種純粹的面向?qū)ο蟮脑O(shè)計(jì)言語。C+是C言語的一個(gè)超集,它既支持傳統(tǒng)的面向過程程序設(shè)計(jì),又支持面向?qū)ο蟪绦蛟O(shè)計(jì),C+與C言語的這種兼容性是其勝利的一個(gè)重要方面。 C+由Rich Maseitti提出,它的發(fā)明靈感來源于當(dāng)時(shí)計(jì)算機(jī)言語多方面成果的凝集,特別

18、是BCPL和Simula67。C+的規(guī)范化任務(wù)于1989年已開場(chǎng),在支持面向?qū)ο筇匦缘拈_發(fā)平臺(tái)上,日趨提高和完善。 1.2.2 C+言語對(duì)C言語在非面向?qū)ο蠓矫娴募訌?qiáng) C+作為一種混合言語,在面向?qū)ο蠹胺敲嫦驅(qū)ο筮@兩個(gè)方面都對(duì)C言語進(jìn)展了擴(kuò)展或修訂,使得它既適用于構(gòu)造化程序設(shè)計(jì),又能滿足面向?qū)ο蟪绦蛟O(shè)計(jì)的要求。因此很快流行起來,成為當(dāng)今面向?qū)ο蟪绦蛟O(shè)計(jì)的主要言語。 以下是C+對(duì)C言語在非面向?qū)ο蠓矫娴募僭O(shè)干重要擴(kuò)展。 1C+提供了單行注釋方式在傳統(tǒng)的C言語中C提供了塊注釋方式,其方式如下:/* explanation sentence */而在C+中,除了保管了塊注釋方式外,還添加了一種更為方

19、便的單行注釋方式,其方式如下:/ explanation sentence 2更為靈敏的變量闡明 在傳統(tǒng)的C言語中,部分變量的闡明必需放在可執(zhí)行的代碼的前面。數(shù)聽闡明語句和可執(zhí)行語句的混合將引起編譯錯(cuò)誤。而在C+中,可以在程序代碼塊的任何地方進(jìn)展部分變量的闡明。 3構(gòu)造、結(jié)合和枚舉名可以直接作為類型名運(yùn)用 在C言語中,對(duì)構(gòu)造、結(jié)合和枚舉類型進(jìn)展定義后,要生成該構(gòu)造、結(jié)合和枚舉類型的變量,必需在構(gòu)造名前加上struct 。如對(duì)BankAccount構(gòu)造的變量進(jìn)展闡明時(shí)運(yùn)用如下方式: Btruct BankAccount a; 在C+中,闡明方法可簡化為: BankAccount a;/關(guān)鍵字st

20、ruct不用要 4枚舉類型與整型的關(guān)系 在C言語中,枚舉值與整型值之間可以相互轉(zhuǎn)換運(yùn)用。而C+的類型檢查那么比C要嚴(yán)厲,枚舉值將被自動(dòng)轉(zhuǎn)化為整型值運(yùn)用,但將整型值轉(zhuǎn)化為枚舉值那么需求強(qiáng)迫類型轉(zhuǎn)換,否那么會(huì)出現(xiàn)編譯錯(cuò)誤。如下面的一段代碼,在C言語中都是可以接受的,但某些語句在C+中那么會(huì)引起錯(cuò)誤。enum name John,Mike,Rose,Joan;enum name person1=John; /正確enum name person2=person1; /正確enum name person3=1; /在C+中錯(cuò)誤enum name person4=(enum name )1; /在C+

21、中正確無名結(jié)合可以經(jīng)過運(yùn)用其中數(shù)據(jù)項(xiàng)的名字直接進(jìn)展訪問。 5作用域限定運(yùn)算符: 作用域限定運(yùn)算符:用于對(duì)當(dāng)前作用域之外的同名變量進(jìn)展訪問。如在下面的例子中,我們?cè)诓糠肿兞縱ar的作用域內(nèi)運(yùn)用:var來實(shí)現(xiàn)對(duì)全局變量var的訪問。#include int var;void main ( ) float var; var=3.14; :var=6; coutlocal variable var=varendl; coutglobal variable var=:varWidth=100; Edit1-Height=10; 10內(nèi)聯(lián)函數(shù)(inline) C+提供了內(nèi)聯(lián)函數(shù)。運(yùn)用內(nèi)聯(lián)函數(shù)可以節(jié)約函數(shù)調(diào)

22、用時(shí)保管現(xiàn)場(chǎng)所需的系統(tǒng)開銷,提高程序執(zhí)行效率。同時(shí),由于內(nèi)聯(lián)函數(shù)的運(yùn)用將增大程序的代碼段,因此建議在充分權(quán)衡系統(tǒng)開銷和程序代碼段長度的關(guān)系后謹(jǐn)慎運(yùn)用。 11缺省函數(shù)參數(shù) 在C+的函數(shù)調(diào)用時(shí),可以缺省函數(shù)的參數(shù)。但是要運(yùn)用缺省函數(shù)參數(shù),必需在函數(shù)定義時(shí)為該參數(shù)賦一缺省值,且所缺省參數(shù)的順序只能是從右到左,不能隨意缺省。請(qǐng)看下面的例子:int function (int a=0; int b=1; int c=2)以下函數(shù)調(diào)用都是合法的:function ( ); /等同于function (0,1,2)function (12); /等同于function (12,1,2)function (1

23、2,13); /等同于function (12,13,2)function (12,13,14);而以下函數(shù)調(diào)用那么是非法的:function ( ,13,14);function (12, ,14); 12函數(shù)前往值 在C+中,任何闡明為非void類型的函數(shù)都需求指定一個(gè)相應(yīng)類型的前往值,否那么在函數(shù)的編譯時(shí)會(huì)產(chǎn)生警告錯(cuò)誤。 1.2.3 C+對(duì)于面向?qū)ο蠹夹g(shù)的支持 類和對(duì)象是面向?qū)ο蠹夹g(shù)的基石,因此,我們首先要處理的問題是如何用C+言語來描畫類和對(duì)象。 讓我們回想一下C言語中的構(gòu)造體這種復(fù)合數(shù)據(jù)類型,構(gòu)造可把相關(guān)聯(lián)的數(shù)據(jù)元素組合成一個(gè)一致體,它和類非常類似,其區(qū)別主要在于C的構(gòu)造不含成員函數(shù)

24、,而C+的類既能包含數(shù)據(jù)元素(即數(shù)據(jù)成員),又能包含方法(即成員函數(shù))。 下面用C+定義了BankAccount(銀行帳號(hào))類,該類包含有兩個(gè)數(shù)據(jù)成員和兩個(gè)成員函數(shù):class BankAccountprivate:float balance;unsigned accountNumber;public:void deposit (float amount)balance+=amout;void withdraw (float amout) balance-=amout;float getbalance ( ) return balance; ; 可以看出C+中定義類的語句確實(shí)同定義構(gòu)造非常相像

25、。我們運(yùn)用了關(guān)鍵字class表示類,這里BankAccount是類名,在一對(duì)大括號(hào)中羅列了一切的數(shù)據(jù)成員和方法函數(shù)。關(guān)鍵字“private:和“public:分別用于闡明私有成員和公有成員,前者只允許在屬于該類對(duì)象的方法內(nèi)進(jìn)展訪問,后者那么可被外部對(duì)象的方法訪問。 給BankAccount類生成靜態(tài)對(duì)象實(shí)例的語句可以是: BankAccount BA1,BA2; 為了動(dòng)態(tài)生成對(duì)象實(shí)例,我們必需運(yùn)用指針和new操作符: BankAccount *BA3; BA3=new BankAccount; 假設(shè)詳細(xì)引見C+面向?qū)ο蠹夹g(shù),能夠需求半本書的篇幅,而且比較枯燥,對(duì)于學(xué)習(xí)本書的“根底篇和“運(yùn)用篇,

26、我們暫時(shí)只需求以上引見的這些知識(shí)就可以了。在本書的“提高篇將更深化地引見C+和面向?qū)ο蟮膬?nèi)容。 1.2.4 VCL組件類 前面曾提及BCB開發(fā)環(huán)境為用戶提供的類庫被稱為VCL(Visual Component Library),該類庫非常適用于Windows下的快速開發(fā)。 在VCL 中首先定義了一個(gè)基類TObject,其它的類都是TObject的后代。一切的組件都是TComponent類的派生類,它們都能放在BCB的組件面板上供取用。組件中有一部分承繼自TControl類的又常被稱為控件,它們是可視的,有著大體類似的屬性和方法。 TForm類也稱為窗體類,它是運(yùn)用程序的窗口。通常,在BCB的一

27、個(gè)空白程序框架中,已存在著一個(gè)由系統(tǒng)生成的空窗體Form1。 由于C+中對(duì)象的數(shù)據(jù)成員的類型也可以是類,因此對(duì)象中可以含有成員子對(duì)象。主要用于包容成員對(duì)象的那種對(duì)象通常被稱為“容器。窗體中可以放入各種組件,因此,窗體也常被當(dāng)成是容器。 屬性和事件概念是BCB對(duì)C+類的某種擴(kuò)展和深化,為此BCB中引入了擴(kuò)展關(guān)鍵字_property。屬性是類中一種特殊的數(shù)據(jù)成員,對(duì)該成員的讀寫常伴隨著一系列與Windows API調(diào)用有關(guān)的組件形狀的改動(dòng)。事件那么是一種觸發(fā)器,它通常與某種特定形狀(如接納到某個(gè)Windows音訊)相聯(lián)絡(luò)。用戶可以為事件編寫代碼,該代碼只在上述的某種特定形狀發(fā)生時(shí)被執(zhí)行。 在1.1

28、.4節(jié)的例子中,我們寫代碼Form1-Caption=Hello,World!,其中Caption即為類TForm的屬性。雙擊按鈕時(shí)出現(xiàn)的空白代碼框架: void _fastcall TForm1:Button1Click(TObject *Sender) 即為Button1對(duì)象的OnClick事件的代碼框架。 在BCB下編程,所要做的任務(wù)大部分都與VCL對(duì)象的屬性與事件有關(guān)。由于VCL中有大量的組件,必需循序漸進(jìn)地學(xué)習(xí)它們的用法。假設(shè)讀者能熟練運(yùn)用多種VCL組件的屬性與事件,就能成為一個(gè)Windows下的編程高手。 1.2.5 BCB的字符串類型 傳統(tǒng)的C言語中沒有真正的字符串類型,只需字符

29、數(shù)組或指針,因此運(yùn)用中常帶來不便。BCB采用了Ansi C+中的AnsiString類,彌補(bǔ)了C的缺乏。此外,BCB中定義的TStrings等類型也非常有用。下面簡單引見這些類型的用法。 1AnsiString類 AnsiString類除了將一個(gè)長字符串作為它的數(shù)據(jù)成員外還提供了支配字符串的方法,并且能方便地與C的字符類型相轉(zhuǎn)換。大部分編程言語都允許運(yùn)用“+號(hào)銜接兩個(gè)字符串,但在C中卻不行,這會(huì)帶來許多不便,好在AnsiString處理了這個(gè)問題。例如: AnsiString s1,s2,s3; s1=abc; s2=efg; s3=s1+d+s2; 是完全符合C+語法的。由于AnsiStri

30、ng的強(qiáng)大功能和具有與其它編程言語的兼容性,使得它在VCL類的屬性和方法參數(shù)中被大量運(yùn)用。 AnsiString類提供了如下主要的方法函數(shù): Length 前往AnsiString中的字符數(shù)。 IsEmpty 假設(shè)AnsiString為空,那么前往true,否那么前往false。 SubString 前往該AnsiString的子串。 c_str 將AnsiString轉(zhuǎn)化為根本C言語的*char型。由于調(diào)用C或C+的函數(shù)時(shí),參數(shù)的數(shù)據(jù)類型經(jīng)常要求是char*,所以可運(yùn)用該函數(shù)先將AnsiString轉(zhuǎn)換為char *型,再進(jìn)展調(diào)用。 留意:AnsiString:c_str( )前往一個(gè)指向A

31、nsiString對(duì)象內(nèi)部字符串緩沖的指針,一旦運(yùn)用該調(diào)用語句終了,這個(gè)指針也就不再有效。 atoi 將數(shù)值型字符串轉(zhuǎn)換為整數(shù)。 itoa 將整數(shù)轉(zhuǎn)化為字符串。 AnsiCompare 將該字符串與指定的字符串比較,比較時(shí)區(qū)分大小寫。 2TStrings類 TSrings是另一個(gè)在VCL中被廣泛運(yùn)用的字符串類型,它可以將一段由假設(shè)干行組成的文本保管在一個(gè)長字符串中。運(yùn)用TStrings的方法可根據(jù)實(shí)踐需求方便地在這一段文本中插入或刪除行,或?qū)⑵滢D(zhuǎn)換為其它字符串類型。VCL中TListBox類組件的Items屬性和TMemo類組件的Lines屬性都是TStrings類型的。 3TWideStri

32、ng類 TWideString類是用于與Windows OLE和非英文字符集等相兼容的字符串類型。 1.2.6 BCB的通用函數(shù) BCB編程環(huán)境下提供了一組通用函數(shù),這些函數(shù)主要提供在各種根本數(shù)據(jù)類型之間進(jìn)展轉(zhuǎn)換、磁盤文件操作、字符串操作等功能,它們的運(yùn)用都是比較簡單的。下面引見其中最常用的假設(shè)干函數(shù)。 1IntToStr 函數(shù) IntToStr函數(shù)原型為 AnsiString _fastcall IntToStr (int Value); 功能是將整型變量轉(zhuǎn)換為字符串。2StrToInt 函數(shù)StrToInt函數(shù)原型為int _fastcall StrToInt (const AnsiStr

33、ing S);功能是將字符串轉(zhuǎn)換為整型變量。3FloatToStr 函數(shù)FloatToStr函數(shù)原型為AnsiString _fastcall FloatToStr (float Value);功能是將實(shí)數(shù)型變量轉(zhuǎn)換為字符串。4StrToFloat 函數(shù)StrToFloat函數(shù)原型為float _fastcall StrToFloat (const AnsiString S);功能是將字符串轉(zhuǎn)換為實(shí)數(shù)型變量。 5FloatToStrF函數(shù) FloatToStrF函數(shù)原型為 AnsiString_fastcall FloatToStrF (long double value, TStringFl

34、oatFormat format, int precision, int digits); 功能是將實(shí)數(shù)型變量轉(zhuǎn)換為指定格式的字符串。整型參數(shù)precision和digits分別指定小數(shù)部分的位數(shù)和字符串的長度。參數(shù)format可取值為sffGeneral、sffExponent、sffFixed、 sffNumber以及sffCurrency。6TimeToStr 函數(shù)TimeToStr函數(shù)原型為AnsiString _fastcall TimeToStr (System:TDateTime Time);功能是將當(dāng)前日期和時(shí)間轉(zhuǎn)換為字符串對(duì)象。 7UpperCase函數(shù)UpperCase函數(shù)

35、原型為AnsiString _fastcall UpperCase (const AnsiString S);功能是將指定的AnsiString字符串轉(zhuǎn)換為大寫方式。 8LowerCase 函數(shù)LowerCase函數(shù)原型為AnsiString _fastcall LowerCase (const AnsiString S);功能是將指定的AnsiString字符串轉(zhuǎn)換為小寫方式。9IntToHex 函數(shù)IntToHex函數(shù)原型為AnsiString _fastcall IntToHex (int Value, int Digits); 功能是將整數(shù)轉(zhuǎn)換為十六進(jìn)制字符串。 10FileExist

36、s函數(shù) FileExists函數(shù)原型為 bool _fastcall FileExists (const System:AnsiString FileName); 功能是測(cè)試指定的文件能否存在,假設(shè)存在,那么前往true,否那么前往false。 11DeleteFile函數(shù) DeleteFile函數(shù)原型為 bool _fastcall DeleteFile (const AnsiString FileName); 功能是刪除指定的磁盤文件,假設(shè)操作勝利,那么前往true,否那么前往false。 12CreateDir函數(shù) CreateDir函數(shù)原型為 bool _fastcall Create

37、Dir (const AnsiString Dir); 功能是創(chuàng)建一個(gè)新的目錄,假設(shè)操作勝利,那么前往true,否那么前往false。 13DiskSize函數(shù) DiskSize函數(shù)原型為 int _fastcall DiskSize (Byte Drive); 功能是前往指定磁盤的空間,操作失敗時(shí)前往-1。參數(shù)Drive 取值為“0,代表當(dāng)前盤,取值為1,2,3,.時(shí)分別代表A,B,C,.盤。 14DiskFree函數(shù) DiskFree函數(shù)原型為 int _fastcall DiskFree (Byte Drive); 功能是前往指定磁盤的剩余空間,操作失敗時(shí)前往-1。參數(shù)Drive的用法與

38、DiskSize函數(shù)中的用法一樣。 15StrScan函數(shù) StrScan函數(shù)原型為 char * _fastcall StrScan (const char * Str, char Chr); 功能是在指定的字符串中尋覓特定的字符,并前往指向該特定字符在字符串中第一次出現(xiàn)位置的字符指針。假設(shè)找不到該特定字符,那么前往NULL。 16StrRScan函數(shù) StrRScan函數(shù)原型為 char * _fastcall StrRScan (const char * Str, char Chr); 功能與StrScan類似,但前往值是指向最后一次出現(xiàn)該特定字符處的指針。1.3 C+Builder集成

39、開發(fā)環(huán)境 本章引見C+Builder 6.0運(yùn)用程序集成開發(fā)環(huán)境(IDE)的各個(gè)組成部分及相關(guān)的操作。 啟動(dòng)BCB,進(jìn)入IDE,如圖1-7所示,我們將該環(huán)境分解為四個(gè)窗口和六個(gè)組成部分。這四個(gè)窗口是:程序主窗口、對(duì)象監(jiān)視器、運(yùn)用程序窗體設(shè)計(jì)區(qū)和代碼編輯器。其中,前兩個(gè)窗口分別位于IDE的上方和左方,后兩個(gè)窗口都位于IDE的右下方,其中運(yùn)用程序窗體設(shè)計(jì)區(qū)疊在代碼編輯器之上。主窗口的標(biāo)題是“C+Builder 6,它可被進(jìn)一步分解為主菜單、工具欄、組件面板三個(gè)部分。這三個(gè)部分加上另外三個(gè)窗口就是BCB IDE的六個(gè)主要組成部分。圖1-7 BCB IDE的各個(gè)組成部分 1.3.1 程序主窗口 1主菜

40、單 在BCB IDE主窗口頂部是主菜單,它由File、Edit、Search、View、Project、Run、Component、Database、Tools、Windows、Help等項(xiàng)及相應(yīng)的下拉菜單組成。IDE的大部分功能都可由該菜單系統(tǒng)提供。 1) File下拉菜單 File下拉菜單由New、Open、Open Project、Reopen、Save、Save As、Save All、Close、Close All、Include Unit hdr、Print、Exit等選項(xiàng)組成。 選擇New時(shí)會(huì)彈出下拉菜單,從中可選擇所需創(chuàng)建的對(duì)象或文件類型,其中,New Application

41、用于創(chuàng)建一個(gè)新的工程,即一個(gè)空白的運(yùn)用程序框架,New Form那么用于將一個(gè)空白窗體添加到當(dāng)前翻開的工程中。 Open、Open Project、Reopen用于翻開工程或文件。選用Open和Open Project時(shí)都會(huì)出現(xiàn)翻開文件對(duì)話框,用戶可在對(duì)話框內(nèi)選擇存放文件的途徑以及文件類型,按“翻開按鈕即完成。普通常用Open Project翻開工程,此時(shí),與該工程有關(guān)的主要文件都已被翻開。Reopen 提供最近翻開過的文件列表供選擇翻開。 As為另存,指將當(dāng)前文件以另一途徑或不同的文件名保管;Save All 那么保管當(dāng)前工程下的一切文件。建議初學(xué)者多運(yùn)用Save All。 Close、Cl

42、ose All用于封鎖文件,前者只封鎖當(dāng)前正在操作的文件,后者封鎖當(dāng)前工程下的一切文件。 用Include Unit hdr可使當(dāng)前編輯的源文件中包含另一個(gè)源文件,普通被包含的是C+的頭文件(擴(kuò)展名.h)。此項(xiàng)操作等同于在源程序中參與#include 語句。 用Exit 可退出BCB IDE,前往到Windows。假設(shè)文件尚未封鎖時(shí)選Exit,那么IDE會(huì)給出提示信息。 2) Edit 下拉菜單 Edit下拉菜單由 Undo、Redo、Cut、Copy、Paste、Undelete、Delete、Selete All、Align、Bring to Front、Send to Back、Tab

43、Order 等選項(xiàng)組成。 Undo和Redo用于在代碼編輯器窗口中進(jìn)展文本編輯時(shí)取消和恢復(fù)前一次的操作,它們普通不能用于對(duì)窗體中控件的編輯。 Align、Bring to Front、Send to Back、Tab Order 用于控件的編輯。其中,Align用于陳列(對(duì)齊)控件,在進(jìn)展陳列之前應(yīng)先選中一組需求陳列的控件(按住Shift鍵不放,并用鼠標(biāo)逐個(gè)點(diǎn)擊控件就能選中一組控件);Bring to Front 和 Send to Back 用于處置窗體中假設(shè)干控件相互重疊的情況,Bring to Front將選中的控件置前,Send to Back將選中的控件置后;Tab Order用于調(diào)

44、整窗體中一組控件在程序運(yùn)轉(zhuǎn)時(shí)發(fā)生焦點(diǎn)(光標(biāo))轉(zhuǎn)移的先后順序。 Cut、Copy、Paste、Delete、Undelete 在文本編輯和控件操作兩種情況下都能起作用,分別表示對(duì)文本或控件進(jìn)展剪切、復(fù)制、粘貼、刪除和取消刪除操作。其中,Cut和Delete操作前必需先選中文本或控件,進(jìn)展Paste操作時(shí)必需確保剪貼板上有相應(yīng)的內(nèi)容存在。 3) Search下拉菜單 Search下拉菜單由 Find、Search Again、Replace、Go To Line Number 等選項(xiàng)組成。 Find和Search Again用于在文本中搜索特定字符串,前者用于初次搜索,后者用于對(duì)同一字符串的再次搜

45、索。Replace 那么在搜索根底上進(jìn)展交換。選擇Find或Replace都會(huì)出現(xiàn)對(duì)話框,運(yùn)用時(shí)應(yīng)留意對(duì)話框各選項(xiàng)的正確運(yùn)用方法。這些選項(xiàng)中,Case sensitive表示搜索時(shí)對(duì)字母區(qū)分大小寫,F(xiàn)orward和Backward分別表示搜索方向?yàn)橄蚯昂拖蚝?,Global和Selected text分別表示在全文范圍內(nèi)和當(dāng)前選中文本范圍內(nèi)搜索。 Go To Line Number可搜索到文本的某一行。運(yùn)用時(shí)彈出對(duì)話框,輸入一個(gè)行號(hào)后即可執(zhí)行。 4) View下拉菜單 View下拉菜單由 Object Inspector、Alignment Palette、Window List、Debug W

46、indows、Toggle Form/Unit、Toolbars 等選項(xiàng)組成,主要功能為控制IDE的外觀和在各個(gè)窗口間的切換。 Object Inspector 激活對(duì)象監(jiān)視窗口;Debug Windows翻開Debug(糾錯(cuò))窗口;Window List提供包含了當(dāng)前環(huán)境中已翻開的全部窗口的一個(gè)列表,選中其中一個(gè)窗口的稱號(hào),按一下“OK按鈕就能使該窗口激活并顯示。 Alignment Palette與Edit菜單下的Align項(xiàng)功能類似,但不能經(jīng)過對(duì)話框進(jìn)展操作,而是提供一個(gè)圖形化的工具面板用于陳列控件。 Toolbars可設(shè)置工具條,使某些工具按鈕顯示或封鎖。Toggle Form/Uni

47、t 可將當(dāng)前正在操作的某個(gè)窗體快速切換到代碼編輯器中與該窗體相關(guān)的單元文件,或反過來從當(dāng)前單元文件切換到窗體。 5) Project下拉菜單 Project下拉菜單由Add to Project、Remove from Project、View Source、Compile Unit、Build Project1、Options 等選項(xiàng)組成。 Add to Project可將現(xiàn)存的某個(gè)單元文件或其它對(duì)象添加到當(dāng)前工程;Remove from Project那么從當(dāng)前工程中刪除某一文件或窗體等對(duì)象,操作時(shí)都有對(duì)話框出現(xiàn)。運(yùn)用該兩項(xiàng)功能時(shí),BCB會(huì)對(duì)工程及相關(guān)代碼進(jìn)展必要的分析和修正。 Optio

48、ns 設(shè)置與工程有關(guān)的選項(xiàng)??蛇x擇的選項(xiàng)很多,但大部分都非常專業(yè),初學(xué)者普通不應(yīng)隨意改動(dòng)這些選項(xiàng)的值。 Compile Unit編譯當(dāng)前代碼文件,Build Project1那么編譯整個(gè)工程。 View Source 可翻開工程的主程序單元的代碼進(jìn)展編輯,普通情況下不用編輯修正該代碼。 6) Run下拉菜單 Run下拉菜單由 Run、Parameters、Step Over、Trace Into、Run to Cursor、Program Reset、Program Pause、Add Watch、Add Breakpoint 等選項(xiàng)組成。這些菜單項(xiàng)主要用于運(yùn)用程序運(yùn)轉(zhuǎn)及調(diào)試。 Run菜單項(xiàng)編

49、譯、鏈接并且運(yùn)轉(zhuǎn)運(yùn)用程序。假設(shè)選擇Parameters,可指定程序運(yùn)轉(zhuǎn)時(shí)的命令行參數(shù)。 Step Over和Trace Into都是逐句執(zhí)行程序,但前者對(duì)函數(shù)調(diào)用語句視作整體一次執(zhí)行,而后者那么會(huì)跟蹤到函數(shù)內(nèi)部逐句執(zhí)行。在提高篇的第8章,我們將較詳細(xì)引見這些菜單命令是如何用于程序調(diào)試的。 7) Component下拉菜單 Component下拉菜單由 New Component、Install Component、Import ActiveX Control、Configure Palette 等選項(xiàng)組成,用于創(chuàng)建、安裝自定義控件及配置控件面板。 8) Database下拉菜單 Databas

50、e下拉菜單由 Explore、SQL Monitor、Form Wizard 等選項(xiàng)組成,主要用于對(duì)數(shù)據(jù)庫編程的支持。 選擇Explore,那么彈出“SQL Explore窗口,該窗口用于數(shù)據(jù)庫系統(tǒng)的SQL設(shè)計(jì)。 選擇SQL Monitor,那么彈出“SQL Monitor窗口,該窗口用作SQL操作的監(jiān)視器。 選擇 Form Wizard,那么出現(xiàn)一個(gè)數(shù)據(jù)庫窗體設(shè)計(jì)導(dǎo)游,按照屏幕提示,可以很方便地設(shè)計(jì)一個(gè)對(duì)簡單數(shù)據(jù)庫作常規(guī)操作的窗體。 9) Tools下拉菜單 Tools下拉菜單由Environment Options、Editor Options、Configure Tools、Databa

51、se Desktop、Image Editor 等選項(xiàng)組成,用于環(huán)境設(shè)置并提供一些軟件工具。 Environment Options和Editor Options分別對(duì)IDE和代碼編輯器進(jìn)展設(shè)置。這些設(shè)置的可選工程很多,其中有一些非常適用。例如,我們可在Environment Options對(duì)話窗口中發(fā)現(xiàn)“Preferences頁的“Form designer框內(nèi)有一項(xiàng)“Snap to grid。當(dāng)該項(xiàng)選中時(shí),假設(shè)在窗體上用鼠標(biāo)挪動(dòng)控件,控件只能定位在格點(diǎn)(Grid)上,該項(xiàng)未選中時(shí),無此限制。此外,還可輸入“Gridsize X和“Gridsize Y以改動(dòng)格點(diǎn)的間距等。 Configure

52、 Tools可對(duì)位于IDE左上方的工具條進(jìn)展配置。 Database Desktop、Image Editor 都是BCB提供的適用工具。Database Desktop相當(dāng)于是一個(gè)小型的數(shù)據(jù)庫管理系統(tǒng)(DBMS),主要用于處置Paradox類型的本地?cái)?shù)據(jù),我們將在“運(yùn)用篇的第5章作較詳細(xì)的引見。Image Editor工具用于對(duì)簡單的位圖圖像進(jìn)展編輯。 10) Window下拉菜單 Windows下拉菜單中各項(xiàng)命令可用于在BCB IDE中的各個(gè)窗口之間切換。 11) Help下拉菜單 Help下拉菜單中各項(xiàng)為用戶提供協(xié)助。本章1.3.5節(jié)將引見BCB的協(xié)助系統(tǒng)。 2工具欄 BCB IDE的工

53、具欄位于主菜單的左下方,上面陳列著假設(shè)干個(gè)圖標(biāo)。它們分別與主菜單上的某些常用選項(xiàng)相對(duì)應(yīng),點(diǎn)擊這些圖標(biāo)能更快捷地執(zhí)行相應(yīng)的菜單命令。每個(gè)圖標(biāo)都有本人的稱號(hào),只需將鼠標(biāo)箭頭在圖標(biāo)上停留一點(diǎn)時(shí)間,IDE就會(huì)提示該圖標(biāo)的稱號(hào)。如圖1-8所示,上排從左往右依次為 New、Open、Save、Save All、Open Project、Add file to Project、Remove file from Project、Help圖標(biāo);下排從左往右依次為View Unit、View Form、 Toggle Form/Unit、New Form、Run、Pause、 Trace into、Step Ov

54、er圖標(biāo)。工具欄是可以經(jīng)過設(shè)置進(jìn)展改動(dòng)的,所以上述的陳列不是固定不變的。圖1-8 BCB的工具欄 3組件面板 在本章1.1.4節(jié)中的“Hello,World!范例中,我們從組件面板上選擇一個(gè)按鈕并將它放到運(yùn)用程序主窗體內(nèi),這種“所見即所得的操作方式使程序的界面設(shè)計(jì)變得輕松隨意。 C+ Builder和它的姐妹產(chǎn)品Delphi有一個(gè)明顯的優(yōu)點(diǎn)就是可供選用的組件特別多。這些組件被分門別類地陳列在組件面板上,運(yùn)用起來非常方便。 組件面板位于BCB主窗口的右下方,它由假設(shè)干個(gè)頁面組成。點(diǎn)擊頁標(biāo)簽,可切換當(dāng)前頁。點(diǎn)擊位于面板右端的兩個(gè)小箭頭,可橫向滾動(dòng)頁標(biāo)簽,使一切的頁能顯示。 每個(gè)組件都有本人的稱號(hào),

55、只需將鼠標(biāo)箭頭在組件圖標(biāo)上停留一點(diǎn)時(shí)間,IDE就會(huì)提示該組件的稱號(hào)。在BCB中控件是指具有某些Windows窗口特性的可視組件,或者用更專業(yè)一點(diǎn)的說法就是屬于由TControl派生的類。由于大部分最常用的組件都是控件,因此有時(shí)也將組件面板稱為控件面板,有些書上甚至將兩者混為一談。 不同版本BCB的組件面板的頁數(shù)和每頁上的組件是有差別的,但差別不是很大。BCB支持用戶創(chuàng)建本人的組件并把它安裝到面板上,此外它也允許用戶改動(dòng)組件在面板上的陳列。因此,即使對(duì)同一版本的BCB,不同用戶組件面板的內(nèi)容也不盡一樣。本節(jié)中引見的是BCB 6.0規(guī)范安裝下的組件面板。 下面簡單引見組件面板上常用的各個(gè)頁,對(duì)其中

56、各個(gè)組件的詳細(xì)用法將在后續(xù)章節(jié)中結(jié)合編程技術(shù)進(jìn)展引見。 1) Standard頁 Standard頁上有16個(gè)組件,常用的有:主菜單(MainMenu)、標(biāo)簽(Label)、文本編輯框(Edit)、備注框(Memo)、按鈕(Button)、復(fù)選框(CheckBox)、列表框(ListBox)、組合框(ComboBox)、滾動(dòng)條(ScrollBar)、單項(xiàng)選擇按鈕組(RadioGroup)和面板(Panel)等,如圖1-9所示。這些組件主要用于創(chuàng)建運(yùn)用程序界面和各種對(duì)話框。圖1-9 Standard 頁上的組件 2) Additional頁 Additional頁上有22個(gè)組件,常用的有:快速按

57、鈕(SpeedButton)、掩碼編輯框(MaskEdit)、圖像(Image)、圖形(Shape)和圖表(Chart)等,如圖1-10所示。這些組件用于程序界面設(shè)計(jì),圖形、圖像顯示等。圖1-10 Additional 頁上的組件 3) Win32頁 Win32頁上有19個(gè)組件,常用的有:RTF編輯器(RichEdit)、頁面控制框(PageControl)、進(jìn)度顯示欄(ProgressBar)、微調(diào)按鈕(UpDown)、日期輸入框(DateTimePicker)、月份牌(MonthCalendar)和樹構(gòu)造顯示框(TreeView)等,如圖1-11所示。這些控件功能強(qiáng)大,運(yùn)用廣泛。其中,Ri

58、chEdit可顯示和編輯豐富的格式文本(這是一種規(guī)范的格式化文本文件,在Windows下擴(kuò)展名為.rtf,可在Word等字處置軟件中翻開)。DateTimePicker或MonthCalendar可提供非常友好的日期輸入界面,TreeView可提供處置樹形構(gòu)造所需的圖形界面,但運(yùn)用較復(fù)雜。圖1-11 Win32 頁上的組件 4) System頁 System頁上有8個(gè)組件,常用的有:Timer(定時(shí)器)、MediaPlayer(媒體播放器)和OleContainer(Ole容器)等,如圖1-12所示。這些組件用于時(shí)間控制、播放多媒體和插入Ole對(duì)象等。 5) Dialogs頁 Dialogs頁

59、上有10個(gè)對(duì)話框組件,最常用的有:翻開文件對(duì)話框(OpenDialog)、保管文件對(duì)話框(SaveDialog)、字體對(duì)話框(FontDialog)、顏色對(duì)話框(ColorDialog)和打印對(duì)話框(Printdialog)等,如圖1-13所示。它們將規(guī)范Windows風(fēng)格的對(duì)話框提供應(yīng)運(yùn)用程序,運(yùn)用非常方便。圖1-12 System 頁上的組件 圖1-13 Dialogs頁上的組件 6) Data Controls、BDE、ADO、Data Access頁 Date、Controls、BDE、ADO、Date Access這幾個(gè)頁上的組件都是用于對(duì)數(shù)據(jù)庫運(yùn)用系統(tǒng)開發(fā)提供支持的。與以前版本相比

60、,BCB 6.0對(duì)這幾個(gè)頁面作了較大調(diào)整。 Data Controls頁上的組件主要用于數(shù)據(jù)庫程序的界面設(shè)計(jì),如圖1-14所示。其中,DBEdit、DBMemo、DBListBox、DBComboBox、DBRadioGroup等組件分別與Standard頁上Edit、Memo、ListBox、ComboBox、RadioGroup等組件用法類似,但運(yùn)用時(shí)要與數(shù)據(jù)表中的字段對(duì)象相聯(lián)絡(luò)。圖1-14 Data Controls 頁上的組件 Data Access頁上的組件主要用于銜接各種數(shù)據(jù)集,其中最常用的是數(shù)據(jù)源(DataSource)組件。BDE是“Borland Database Engin

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論