第二章 Delphi面向對象的編程方法
Delphi的編程語(yǔ)言是以Pascal為基礎的。Pascal語(yǔ)言具有可讀性好、編寫(xiě)容易的特點(diǎn),這使得它很適合作為基礎的開(kāi)發(fā)語(yǔ)言。同時(shí),使用編譯器創(chuàng )建的應用程序只生成單個(gè)可執行文件(.EXE),正是這種結合,使得Pascal成為Delphi這種先進(jìn)開(kāi)發(fā)環(huán)境的編程語(yǔ)言。
本章中,我們將討論Object Pascal的主要特點(diǎn),并講解如何在事件處理過(guò)程和其他應用程序中,使用它來(lái)編制程序代碼。本章將講解Delphi應用程序中最常用的Object Pascal語(yǔ)法,而不是Pascal語(yǔ)言的一切細節。如果您完全不熟悉Pascal編程,請參閱一些基礎的Pascal教程。如果您具有編程經(jīng)驗,并能熟練地使用其他流行程序語(yǔ)言,您將在本章的Object Pascal中發(fā)現一些相同的概念。如果您已經(jīng)熟悉了Borland Pascal,就可以快速瀏覽或跳過(guò)本章。
2.1 編寫(xiě)Object Pascal程序代碼
在前邊的章節中,我們通過(guò)例程,已經(jīng)編寫(xiě)了幾行簡(jiǎn)單的代碼。在本章中,我們將從熟悉Pascal編程的角度,配合實(shí)例,講解Object Pascal編程的基本方法。
在編寫(xiě)自己的Object Pascal程序時(shí),要注意程序的可讀性。Pascal語(yǔ)言是英式結構語(yǔ)言,在程序中選擇合適的縮排、大小寫(xiě)風(fēng)格,并在需要時(shí)將程序代碼分行,會(huì )使得程序代碼能夠很容易地被自己和他人讀懂。一般的程序員都有這樣的體驗:如果不給程序加上適當的注解,一段時(shí)間后,自己也難以理清程序的流程。給程序及時(shí)地加上注釋是良好的編程習慣。Delphi的注釋需要加注在{}之間,編輯器會(huì )把它們處理成為空白。Delphi保留了Borland Pascal編輯器的風(fēng)格,關(guān)鍵字采用黑體字,被注釋的部分會(huì )變暗,這使得編程風(fēng)格良好,易讀易寫(xiě)。
2.1.1 編寫(xiě)賦值語(yǔ)句
在事件處理過(guò)程中,最常用到的工作就是把一個(gè)新值賦給一個(gè)屬性或變量。在設計用戶(hù)界面時(shí),可以使用Object Inspector(Object Inspector)來(lái)改變其屬性;但有時(shí)需要在程序執行時(shí)改變屬性的值,而且有些屬性只能在執行時(shí)改變,這些屬性在Delphi的在線(xiàn)幫助的“Proprety”主題中被標為執行期屬性。進(jìn)行這種改變,就必須使用賦值語(yǔ)句?荚嚧笳搲
下文的賦值語(yǔ)句表征一個(gè)OnClick事件。當按鈕按動(dòng)后,將編輯框部件Edit1的Color屬性置為clRed:
procedure TForm1.Button1Click(Sender: TObject);
begin
Edit1.Color := clRed;
end;
當按動(dòng)按鈕后賦值語(yǔ)句被執行,編輯框變成紅色。
在語(yǔ)句中,部件的名稱(chēng)在屬性前,中間用“.”表示屬性的所屬關(guān)系。這樣就準確地指定了要將clRed值賦給哪一部件的哪一屬性。賦值號為“:=”,不論給屬性還是給變量賦值,都是將右邊的值賦給左邊的屬性或變量。
當將一個(gè)屬性值、變量、常量或文本數據賦給屬性或變量時(shí),所賦值的類(lèi)型和接受此值的屬性或變量的類(lèi)型應相同或兼容。一個(gè)屬性或變量的類(lèi)型定義了此屬性或變量的可能值集合,也定義了程序代碼可以執行的運算。在前邊的例程中,編輯框部件的Color屬性和clRed的類(lèi)型都是TColor?梢栽谠诰(xiàn)幫助中找到一個(gè)屬性的類(lèi)型;另外一種方法是在Object Inspector中選定該屬性值段,并按下F1鍵,則類(lèi)型將在屬性說(shuō)明的結尾處列出,例如Color屬性列出下邊的語(yǔ)句:
Property Color : TColor;
有些屬性是只讀(Read Only)的,它們只能被讀取,不能被改變。請查閱在線(xiàn)幫助,在Delphi中這些只讀屬性都有注解。
相關(guān)推薦:2010年9月計算機等級考試試題及答案解析專(zhuān)題北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內蒙古 |