ActiveX 控件架構
ActiveX 控件技術是以 OLE 中許多較低層級的物件和介面為基礎所建置。 控件上可用的確切介面會隨著控件的功能而有所不同。 本節會進一步瞭解控件可能提供的功能。
ActiveX 控制件可用來提供建置元件,以在應用程式中建立使用者介面。 例如,按兩下容器應用程式時起始一些動作的按鈕是簡單的控件。 下列層面涉及提供這些使用者介面建置組塊:
- 控件可以內嵌在其容器用戶端內,以支援用戶端內的一些使用者介面活動。 因此,當控件內嵌在容器內,且需要提供儲存其狀態的方法時,控件必須提供本身的視覺表示法,例如其屬性值及其容器內的位置。 用戶端必須支援是內嵌在容器中的物件。
- 藉由使用鍵盤或滑鼠啟用控制項,使用者就會在用戶端應用程式中起始一些動作。 因此,控件必須回應鍵盤活動,而且必須能夠與其客戶端通訊,以便通知其容器其活動,並在用戶端中觸發事件。
- 用戶端通常也會提供程式設計語言,讓使用者可以透過該語言起始控件的屬性和方法所提供的動作。 因此,控件也必須支援自動化和一組設計時間與運行時間功能。
由於其在提供使用者介面建置組塊中的角色,控件通常會使用 OLE 技術,支援下列領域的功能,如下所示:
-
屬性和方法
-
就像任何 OLE 對象一樣,控件可以透過一組具有屬性和方法的傳入介面來提供其大部分功能。 容器可以提供額外的環境屬性,而且可以支援透過匯總擴充控件的屬性。 這些功能位於 OLE 自動化、屬性頁、可連接的物件和 ActiveX 控件技術上。
-
事件
-
除了提供屬性和方法之外,ActiveX 控制項還可以提供傳出介面,以通知其用戶端的事件。 用戶端必須支持處理這些事件。 這些功能使用 OLE 自動化和可連接的物件。
-
視覺表示法
-
控件可以支援在其容器內定位和顯示本身。 容器會放置 控件,並決定其大小。 這些功能使用複合文件技術,包括 OLE 拖放技術。
-
鍵盤處理
-
控制項可以回應鍵盤快捷鍵,讓使用者可以起始控件所執行的動作。 容器會管理其所有內嵌控件的鍵盤活動。 這些功能使用控件和複合文件技術。
-
堅持
-
控件可以儲存其狀態。 用戶端會管理其內嵌控件的持續性。 這些功能使用結構化儲存和對象持續性技術。
-
註冊和授權
-
控件通常支援自我註冊,並在具現化時建立一組登錄專案。 控件也可以獲得授權,以協助防止未經授權的使用。
這些功能大部分都牽涉到控件及其用戶端容器。
相關主題