- 相關(guān)推薦
創(chuàng)建自己的Dephi構(gòu)件
可視化編程工具Dephi以強大的功能,眾多的優(yōu)越特性,深受廣大使用者的喜愛,但如何編寫自己的Dephi構(gòu)件對許多使用者來說比較陌生,因此,有必要掌握構(gòu)件的創(chuàng)建方法。
一. 構(gòu)件創(chuàng)建的步驟:
1. 使用New Component 對話框開始創(chuàng)建
選擇File|New彈出Object Reposity,雙擊Object Reposity的Component圖標(biāo),顯示New Component對話框開始創(chuàng)建。
2. 為構(gòu)件增加屬性
Dephi中用關(guān)鍵字Property聲明屬性字段,屬性有read和 write可選從句,其語法格式為:
Property MyProperty :Atype
Read GetProperty write SetProperty;
GetProperty SetProperty分別為讀寫屬性過程。
3. 為構(gòu)件增加方法
在Dephi構(gòu)件創(chuàng)建中增加新的方法,需在 interface區(qū)的 private 、 protected 以 及public中的任一部分描述函數(shù)原型,若方法可能在以后被重載,則應(yīng)在尾部加上 virtual 或dynamic關(guān)鍵字,然后在 implementation區(qū)定義方法的具體實現(xiàn)代碼。
4. 為構(gòu)件增加事件
在Dephi中,事件也是使用關(guān)鍵字Property來聲明。其語法格式為:
Property OnNewEvent :Aevent Type
read FonNewEvent write FonNewEvent;
聲明事件后往往要將windows的消息傳遞與事件聯(lián)系起來才能真正實現(xiàn)事件驅(qū)動,因此,我們還要增加一種新的特殊類型的動態(tài)的“消息管理”方法,其語法格式為:
Procedure MsgPro(var Msg :Tmessage) ;message AmsgIndex;
其中,關(guān)鍵字Message 聲明此為一個消息管理方法。 AmsgIndex 為一整數(shù)常數(shù),作 windows 消息動態(tài)索引,當(dāng)索引為 AmsgIndex 的消息傳遞至應(yīng)用程序時便會執(zhí)行 MsgPro過程。
5. 測試構(gòu)件
測試構(gòu)件,確信構(gòu)件是按設(shè)計編譯和起作用的。這是構(gòu)件開發(fā)中非常關(guān)鍵的一步,為測試構(gòu)件,要先寫一個用作測試的應(yīng)用程序,由于不能拉出構(gòu)件選項板窗口上的構(gòu)件,還必須人工創(chuàng)建一個構(gòu)件。
6. 將新構(gòu)件添加到構(gòu)件選項板
當(dāng)構(gòu)件正常工作并令人感到滿意后,可添加到構(gòu)件選項板上,從主菜單選擇Component | Install Component顯示一個Install Component 對話框,該對話框能夠添加構(gòu)件到程序包。
二. 構(gòu)件創(chuàng)建實例
下面要開發(fā)的新構(gòu)TnewLabel 是從TLabel 類繼承來的,它與 TLabel 具有相似的焦點感應(yīng)能力:當(dāng)鼠標(biāo)移到Tlabel 上時,文字顏色發(fā)生改變;當(dāng)鼠標(biāo)離開時,顏色恢復(fù)。它還將增加一個EnterTextColor屬性以及 OnMouseLeave和OnMouseLeave事件。屬性 EnterTextColor中可以輸入鼠標(biāo)進入構(gòu)件時文字的顏色, OnMouseEnter、 OnMouseLeave事件中則可輸入程序員自己的代碼來指定鼠標(biāo)進入和離開構(gòu)件時的動作。
1. 選中Component菜單項中的 New Component選項,在 Ancestor Type 框填入Tlabel,在 Class Name框中填入 TnewLabel ,在 Palette Page框中填入 Samples,在 Unit File Name 框中填入 NewCom.pas ,然后單擊按鈕 Create Unit就進入到代碼編輯狀態(tài)。
2. 使用 Tools菜單中Image Editor來創(chuàng)建編輯文件NewCom.dcr,為 TnewLabel類建立位圖。
3. 增加新屬性EnterTextColor ,并為讀寫屬性增加私有方法 SetEnterTextColor和私有變
量 FenterTextColor。
加入如下的代碼:
Private
FenterTextColor : Tcolor;
SetEnterTextColor(Acolor :Tcolor);
Published
Property EnterTextColor : Tcolor
Read FenterTextColor Write SetEnterTextColor(Acolor);
…
Implementation
Procedure TnewLabel.SetEnterTextColor(Acolor :Tcolor);
Begin
FEnterTextColor:=Acolor;
End;
下一頁
【創(chuàng)建自己的Dephi構(gòu)件】相關(guān)文章:
談變壓器構(gòu)件和附件的檢修03-19
支持語音的教師上課點名系統(tǒng)的設(shè)計與實現(xiàn)DEPHI+SQL03-08
鋼筋混凝土構(gòu)件保護層問題探討03-26
試論建筑結(jié)構(gòu)設(shè)計安全度與結(jié)構(gòu)構(gòu)件耐久性03-11
區(qū)域旅游經(jīng)濟基礎(chǔ)理論“緣板5+2學(xué)說”構(gòu)件分析03-21
農(nóng)村小學(xué)師德師風(fēng)創(chuàng)建研究06-23
小學(xué)數(shù)學(xué)高效課堂的創(chuàng)建策略03-27
AutoCAD中圖形庫的創(chuàng)建和管理03-18
Windows 2000系統(tǒng)編程-進程的創(chuàng)建12-04
- 試論如何在可信網(wǎng)絡(luò)中保證網(wǎng)絡(luò)可用的研究
- LabWindows/CVI的應(yīng)用特點
- 創(chuàng)建平安校園
- SNS網(wǎng)絡(luò)中的若干問題
- 文明校園創(chuàng)建報告
- 淺談無線傳感器網(wǎng)絡(luò)應(yīng)用于深空探測的一些關(guān)鍵技術(shù)
- 淺談搜索引擎優(yōu)化的鏈接策略
- 淺析基于網(wǎng)絡(luò)的多媒體教學(xué)設(shè)備中央控制及管理系統(tǒng)的設(shè)計與實現(xiàn)
- 基于Vxworks實時操作系統(tǒng)的串口通信程序設(shè)計與實現(xiàn)
- 談?wù)撘姆治龇椒ǖ木W(wǎng)絡(luò)化發(fā)展和應(yīng)用
- 文明創(chuàng)建總結(jié)
- 創(chuàng)建簡歷自我評價
- 介紹自己文章
- 自己制作簡歷
- 激勵自己文章
- 文明小區(qū)創(chuàng)建總結(jié)
- 巾幗文明崗創(chuàng)建總結(jié)
- 英文面試自己介紹
- 簡歷介紹自己范文
- 有關(guān)介紹自己的文章