<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    如鵬網(wǎng) 大學生計算機學習社區(qū)

    CowNew開源團隊

    http://www.cownew.com 郵件請聯(lián)系 about521 at 163.com

      BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
      363 隨筆 :: 2 文章 :: 808 評論 :: 0 Trackbacks
    ?

    二、控件開發(fā)縱覽

    ? 通過開發(fā)上邊這個控件,我們已經(jīng)對Delphi控件開發(fā)有了基本的認識。下面我們將系統(tǒng)的講述一下控件開發(fā)的知識。

    制作控件第一件事就是選擇適當?shù)?Delphi對象類型作為父對象,以派生新的對象。子對象可以繼承父對象的全部非 private部件,但不能擺脫不需要的部件。因此,所選父對象應(yīng)盡可能多地包含子對象所需的屬性、事件和方法,但不應(yīng)包含子對象不需要的東西。Delphi必須從Tcomponent或Tcomponent的子類派生。TComponent是所有 Delphi控件的基點,但若直接從 TComponent 派生新控件,很多東西就需要自己從頭做起。一般只有非可視控件才直接從 TComponent派生。 Delphi提供了若干專門用于制作控件(可視控件)的對象類型,都是從 TControl和 TWinControl派生而來。

    TControl的子類型用于非窗口式控件, TWinControl的子類型則用于窗口式控件。除非特殊需要,一般不直接從 TControl和TWinControl派生新控件,而是從其子類型派生。這樣可以充分利用原有的屬性、事件和方法,減少很多工作量。在這些控件類型中,非通用的屬性、事件和方法都聲明為 protected。這樣可以禁止控件用戶訪問,又能被子類型繼承和修改。在新控件中,可以簡單地把繼承來的屬性和事件重新聲明為 published,使控件用戶能在設(shè)計期通過對象編輯窗口訪問,也可以進而修改屬性的默認值和讀寫方式,或是重載( override)事件處理子過程和其他控件方法,以修改其中的程序代碼。重聲明可以放寬訪問權(quán)限,但不能相反,例如,不可能把 published屬性重聲明為 private或 protected。

    ?Delphi控件也是Delphi的類,所有的控件都有特定的結(jié)構(gòu)。一般控件包括三大組成部分:屬性、方法和事件,下面先介紹初學控件開發(fā)的最難懂的屬性部分,其他部分我們將在以后章節(jié)為大家介紹。

    屬性主要部分就是屬性的讀寫方法(或讀寫字段)。前面的例子用的是讀寫字段,也就是對屬性的讀寫都通過對字段的讀寫來完成。下面為大家講解一下讀寫方法的使用方法:

    TmyComponent = class(TComponent)

    Private

    ? Fcount: Integer;

    ? Procedure SetCount(Avalue: Integer);

    Pulbished

    ? Property Count: Integer read Fcount write SetCount;

    End;

    這個例子中當執(zhí)行MyComponent1.Count := 1;這樣的代碼時,將會導致SetCount方法執(zhí)行,并且參數(shù)Avalue被指定為1;當執(zhí)行 I := MyComponent1.Count;方法時,會將 Fcount的值返回給I。

    屬性的聲明語法允許屬性聲明的Read和Write部分用訪問方法取代對象私有數(shù)據(jù)域。屬性的讀方法是不帶參數(shù)的函數(shù),返回同屬性相同類型的值。通常讀方法以Get開頭。屬性的寫方法總是帶一個參數(shù)的過程。寫方法常常以Set開頭。

    思考題:

    1、? 如何為控件添加屬性?

    2、? TwinControl類派生的控件的特點是什么?

    posted on 2005-10-21 23:24 CowNew開源團隊 閱讀(2848) 評論(1)  編輯  收藏

    評論

    # re: Delphi控件開發(fā)淺入深出(二) 2008-01-13 08:34 lob
    學習ing  回復  更多評論
      


    只有注冊用戶登錄后才能發(fā)表評論。


    網(wǎng)站導航:
     
    主站蜘蛛池模板: 国产精品久免费的黄网站| 69式互添免费视频| 亚洲国产综合人成综合网站| 亚洲av中文无码乱人伦在线观看| 毛片免费观看的视频在线| 6080午夜一级毛片免费看| 免费黄色一级毛片| 亚洲va久久久噜噜噜久久狠狠| 久99久无码精品视频免费播放| 亚洲综合另类小说色区色噜噜| 亚洲精品国产福利在线观看| 免费的黄网站男人的天堂| 未满十八18禁止免费无码网站 | 亚洲人成影院在线无码按摩店| 亚洲国产午夜福利在线播放| 免费人妻精品一区二区三区| 久久99亚洲综合精品首页| 狠狠色伊人亚洲综合网站色| 成人免费午夜视频| 男女猛烈激情xx00免费视频| 亚洲色精品88色婷婷七月丁香| 国产成人一区二区三区视频免费| 久久久久亚洲AV无码专区首JN| 成年女人视频网站免费m| 黄色网址在线免费观看| 亚洲人成精品久久久久| 69av免费视频| 污网站在线观看免费| 亚洲国产精品无码专区影院| 无遮免费网站在线入口| 亚洲日韩在线中文字幕综合 | 美女被免费喷白浆视频| 亚洲av永久中文无码精品 | 亚洲第一精品在线视频| 精品久久久久久无码免费| 亚洲天堂中文资源| 高清一区二区三区免费视频| 国产精品亚洲精品观看不卡| 亚洲人午夜射精精品日韩| 免费人成在线观看69式小视频| 国产成人久久精品亚洲小说|