轉自: http://hi.baidu.com/jenfmo/blog/item/b000c50a7acb8e3ab1351dfd.html
前言
ActiveX控件是一種實現(xiàn)了一系列特定接口而使其在使用和外觀上更象一個控件的COM組件。ActiveX控件這種技術涉及到了幾乎所有的COM和OLE的技術精華,如可鏈接對象、統(tǒng)一數(shù)據(jù)傳輸、OLE文檔、屬性頁、永久存儲以及OLE自動化等。
ActiveX控件作為基本的界面單元,必須擁有自己的屬性和方法以適合不同特點的程序和向包容器程序提供功能服務,其屬性和方法均由自動化服務的IDispatch接口來支持。除了屬性和方法外,ActiveX控件還具有區(qū)別于自動化服務的一種特性--事件。事件指的是從控件發(fā)送給其包容程序的一種通知。與窗口控件通過發(fā)送消息通知其擁有者類似,ActiveX控件是通過觸發(fā)事件來通知其包容器的。事件的觸發(fā)通常是通過控件包容器提供的IDispatch接口來調用自動化對象的方法來實現(xiàn)的。在設計ActiveX控件時就應當考慮控件可能會發(fā)生哪些事件以及包容器程序將會對其中的哪些事件感興趣并將這些事件包含進來。與自動化服務不同,ActiveX控件的方法、屬性和事件均有自定義(custom)和庫存(stock)兩種不同的類型。自定義的方法和屬性也就是是普通的自動化方法和屬性,自定義事件則是自己選取名字和Dispatch ID的事件。而所謂的庫存方法、屬性和事件則是使用了ActiveX控件規(guī)定了名字和Dispatch ID的"標準"方法、屬性和事件。
ActiveX控件可以使COM組件從外觀和使用上能與普通的窗口控件一樣,而且還提供了類似于設置Windows標準控件屬性的屬性頁,使其能夠在包容器程序的設計階段對ActiveX控件的屬性進行可視化設置。ActiveX控件提供的這些功能使得對其的使用將是非常方便的。本文下面即以MFC為工具對ActiveX控件的開發(fā)進行介紹。
posted on 2008-06-11 00:58
幽幽 閱讀(605)
評論(0) 編輯 收藏 引用