元件繼承的範例或說明 |
尚未結案
|
peterjudy
一般會員 發表:4 回覆:2 積分:1 註冊:2004-01-13 發送簡訊給我 |
|
Chance36
版主 發表:31 回覆:1033 積分:792 註冊:2002-12-31 發送簡訊給我 |
peterjudy 你好 在本站資源中心,有各式各樣的元件(大部份都有含SourceCode)就是最好的範例啦!當然網路上還有為數眾多的網站有提供含SourceCode的免費元件,都可拿來學習,同樣的本站資源中心也有很多的好站連連。 至於撰寫元件的說明,一般坊間的書籍對於這個部份的說明倒是不多,或只是簡單帶過(也許有,但我並沒看過,因為也很久沒到書店逛了),反而是Borland原版的書(Delphi 5軟體隨附的)資料庫應用程式設計手冊中第三部份寫的還滿完整的(約160頁)。 _______________________________________
深藍的魚,祝您好運..........連連
|
hagar
版主 發表:143 回覆:4056 積分:4445 註冊:2002-04-14 發送簡訊給我 |
1.繼承元件的方式很簡單, 比方說要繼承 TEdit, 則
type TMyEdit = class(TEdit) end;這樣 TMyEdit 就繼承自 TEdit, TEdit 有什麼 property/method, TMyEdit 也有 2.繼承 method 部份, 由 1. 來看就己繼承了, 應該說是改寫 TEdit 的 method, 例改寫 TEdit 的 constructor type TMyEdit = class(TEdit) public // 宣告部份(注意 override 關鍵字) constructor Create(AOwner: TComponent); override; end; // ... // 實作部份 constructor TMyEdit.Create(AOwner: TComponent); begin inherited; // 表 TEdit 父代的 constructor 這部份也要執行 // 這裡做要 override 的事 Color := clRed; // 比方說更改的顏色 end;3.新增屬性, 比方說要為 TMyEdit 加一個 Title 的屬性 TMyEdit = class(TEdit) FTitle: string; public property Title: read FTitle write FTitle; // 注意 property 關鍵字, 表示它是 TMyEdit 的屬性, 這裡我們是宣告在 public 區段, 若要在 Title 屬性在 Object Inspector 也看得到的話, 要宣告在 published 區段 end;4.新增 method, 方法就是在 private / public / published / protected 等區段宣告一 procedure 或 function 即可, 比方說 TMyEdit 在 public 區段要新增一 Test 的 method TMyEdit = class(TEdit) public procedure Test; // 宣告部份 end; // ... procedure TMyEdit.Test; begin // 這裡寫 Test 這個 method 要做哪些事 end;以上只是簡單描述而已, 有錯誤的地方請大家指正. 以下兩篇有比較詳細的說明, 可以參考看看: http://delphi.about.com/library/bluc/text/uc080701a.htm http://delphi.about.com/library/bluc/text/uc083101a.htm -- 向 KTop 的弟兄們致敬! |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |