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

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

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

    如鵬網 大學生計算機學習社區

    CowNew開源團隊

    http://www.cownew.com 郵件請聯系 about521 at 163.com

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

    二、控件開發縱覽

    ? 通過開發上邊這個控件,我們已經對Delphi控件開發有了基本的認識。下面我們將系統的講述一下控件開發的知識。

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

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

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

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

    TmyComponent = class(TComponent)

    Private

    ? Fcount: Integer;

    ? Procedure SetCount(Avalue: Integer);

    Pulbished

    ? Property Count: Integer read Fcount write SetCount;

    End;

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

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

    思考題:

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

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

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

    評論

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


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


    網站導航:
     
    主站蜘蛛池模板: 精品国产日韩亚洲一区| 亚洲综合精品一二三区在线| 97超高清在线观看免费视频| 亚洲av日韩av无码| 最近中文字幕mv手机免费高清 | 亚洲天天在线日亚洲洲精| 久久久久久精品免费看SSS| 国产成人精品日本亚洲语音| 亚洲精品无码av人在线观看 | 色视频色露露永久免费观看| 91av免费在线视频| 国产精品亚洲综合久久| 亚洲愉拍99热成人精品热久久| 色影音免费色资源| 一级做a爱过程免费视频高清| 亚洲第一网站免费视频| 亚洲成A人片在线观看无码3D| 亚洲精品视频免费看| yellow视频免费看| 亚洲AV无码无限在线观看不卡| 国产AⅤ无码专区亚洲AV| 黄页网站免费观看| 91视频免费观看高清观看完整| 亚洲熟妇久久精品| 日产亚洲一区二区三区| 国产成人精品久久亚洲| 成人a视频片在线观看免费| 免费黄网站在线观看| 免费视频成人国产精品网站| 亚洲an日韩专区在线| 亚洲gv白嫩小受在线观看| 免费一级毛片免费播放| 和日本免费不卡在线v| 国内精品免费久久影院| 亚洲aⅴ无码专区在线观看春色 | 免费中文字幕视频| 亚洲男人的天堂网站| 亚洲国产成人精品电影| 亚洲国产国产综合一区首页| 青青青国产色视频在线观看国产亚洲欧洲国产综合 | 亚洲色成人WWW永久网站|