首頁 考試吧論壇 Exam8視線 考試商城 網絡課程 模擬考試 考友錄 實用文檔 求職招聘 論文下載 | ||
![]() |
2011中考 | 2011高考 | 2012考研 | 考研培訓 | 在職研 | 自學考試 | 成人高考 | 法律碩士 | MBA考試 MPA考試 | 中科院 |
|
![]() |
四六級 | 職稱英語 | 商務英語 | 公共英語 | 托福 | 雅思 | 專四專八 | 口譯筆譯 | 博思 | GRE GMAT 新概念英語 | 成人英語三級 | 申碩英語 | 攻碩英語 | 職稱日語 | 日語學習 | 法語 | 德語 | 韓語 |
|
![]() |
計算機等級考試 | 軟件水平考試 | 職稱計算機 | 微軟認證 | 思科認證 | Oracle認證 | Linux認證 華為認證 | Java認證 |
|
![]() |
公務員 | 報關員 | 銀行從業資格 | 證券從業資格 | 期貨從業資格 | 司法考試 | 法律顧問 | 導游資格 報檢員 | 教師資格 | 社會工作者 | 外銷員 | 國際商務師 | 跟單員 | 單證員 | 物流師 | 價格鑒證師 人力資源 | 管理咨詢師考試 | 秘書資格 | 心理咨詢師考試 | 出版專業資格 | 廣告師職業水平 駕駛員 | 網絡編輯 |
|
![]() |
衛生資格 | 執業醫師 | 執業藥師 | 執業護士 | |
![]() |
會計從業資格考試(會計證) | 經濟師 | 會計職稱 | 注冊會計師 | 審計師 | 注冊稅務師 注冊資產評估師 | 高級會計師 | ACCA | 統計師 | 精算師 | 理財規劃師 | 國際內審師 |
|
![]() |
一級建造師 | 二級建造師 | 造價工程師 | 造價員 | 咨詢工程師 | 監理工程師 | 安全工程師 質量工程師 | 物業管理師 | 招標師 | 結構工程師 | 建筑師 | 房地產估價師 | 土地估價師 | 巖土師 設備監理師 | 房地產經紀人 | 投資項目管理師 | 土地登記代理人 | 環境影響評價師 | 環保工程師 城市規劃師 | 公路監理師 | 公路造價師 | 安全評價師 | 電氣工程師 | 注冊測繪師 | 注冊計量師 |
|
![]() |
繽紛校園 | 實用文檔 | 英語學習 | 作文大全 | 求職招聘 | 論文下載 | 訪談 | 游戲 |
第十九章 Delphi自定義部件開發
Delphi除了支持使用可視化部件所見即所得地建立應用程序外,還支持為開發應用而設計自己的部件。
在本章中將闡述如何為Delphi應用程序編寫部件。這一章將達到兩個目的:
● 教你如何自定義部件
● 使你的部件成為Delphi環境的有機組合部分
19.1 Delphi部件原理
19.1.1 什么是部件
部件是Delphi應用程序的程序構件。盡管大多數部件代表用戶界面的可見元素,但部件也可以是程序中的不可見元素,如數據庫部件。為弄清什么是部件可以從三個方面來考察它:功能定義、技術定義和經驗定義。
1. 部件的功能定義
從最終用戶角度,部件是在Component Palette上選擇的,并在窗體設計窗口和代碼窗口中操作的元素。從部件編寫者角度,部件是代碼中的對象。在編寫部件之前,你應用相當熟悉已有的Delphi部件,這樣才能使你的部件適合用戶的需要。編寫部件的目標之一是使部件盡可能的類似其它部件。
2. 部件的技術定義
從最簡單的角度看,部件是任何從TComponent繼承的對象。TComponent定義了所有部件必須要的、最基本的行為。例如,出現在Component Palette上和在窗體設計窗口中編輯的功能。但是TComponent并不知如何處理你的部件的具體功能,因此,你必須自己描述它。
3. 部件編寫者自己的定義。
在實際編程中,部件是能插入Delphi開發環境的任何元素。它可能具有程序的各種復雜性。簡而言之,只要能融入部件框架,部件就是你用代碼編寫的一切。部件定義只是接口描述,本章將詳細闡述部件框架,說明部件的有限性,正如說明編程的有限性。本章不準備教你用所給語言編寫每一種部件,只能告訴編定代碼的方法和怎樣使部件融入Delphi環境。
19.1.2 編寫部件的不同之處
在Delphi環境中建立部件和在應用程序中使用部件有三個重要差別:
● 編寫部件的過程是非可視化的
● 編寫部件需要更深入的關于對象的知識
● 編寫部件需要遵循更多的規則
1. 編寫部件是非可視化的
編寫部件與建立Delphi應用最明顯的區別是部件編寫完全以代碼的形式進行,即非可視化的 。因為Delphi應用的可視化設計需要已完成的部件,而建立這些部件就需要用Object Pascal 代碼編寫。
雖然你無法使用可視化工具來建立部件,但你能運用 Delphi開發環境的所有編程特性如代碼編輯器、集成化調試和對象瀏覽。
2. 編寫部件需要更深的有關對象的知識
除了非可視化編程之外,建立部件和使用它們的最大區別是:當建立新部件時,需要從已存部件中繼承產生一個新對象類型,并增加新的屬性和方法。另一方面,部件使用者,在建立Delphi應用時,只是使用已有部件。在設計階段通過改變部件屬性和描述響應事件的方法來定制它們的行為。
當繼承產生一個新對象時,你有權訪問祖先對象中對最終用戶不可見的部分。這些部分被稱為protected界面的。在很大部分的實現上,后代對象也需要調用他們的祖先對象的方法,因此,編寫部件者應相當熟悉面向對象編程特性。
3. 編寫部件要遵循更多的規則
編寫部件過程比可視化應用生成采用更傳統的編程方法,與使用已有部件相比,有更多的規則要遵循。在開始編寫自己的部件之前,最重要的事莫過于熟練應用Delphi自帶的部件,以得到對命名規則以及部件用戶所期望功能等的直觀認識。部件用戶期望部件做到的最重要的事情莫過于他們在任何時候能對部件做任何事。編寫滿足這些期望的部件并不難,只要預先想到和遵循規則。
相關推薦:2010年9月計算機等級考試試題及答案解析專題北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內蒙古 |