分享方式:


MFC ActiveX 控制項:最佳化

本文說明可用來優化 ActiveX 控制項以提升效能的技術。

重要

ActiveX 是不應該用於新開發的舊版技術。 如需取代 ActiveX 的新式技術詳細資訊,請參閱 ActiveX 控制項

主題會 關閉 [當可見時啟動選項 ] 和 [在非使用中時提供滑鼠互動] 討論在啟用前不會建立視窗的控制項。 提供無視窗啟用 主題 討論永遠不會建立視窗的控制項,即使它們已啟用也一樣。

Windows 有兩個主要的 OLE 物件缺點:它們會防止物件在使用中時成為透明或不連續,而且會在具現化和顯示控制項時增加大量的額外負荷。 一般而言,建立視窗需要控制項建立時間的 60%。 使用單一共用視窗(通常是容器的)和某些分派程式碼,控制項通常會接收相同的視窗服務,通常不會遺失效能。 擁有視窗對物件而言,大部分是不必要的額外負荷。

某些優化不一定會在某些容器中使用控制項時改善效能。 例如,在 1996 年之前發行的容器不支援無視窗啟用,因此實作這項功能不會在舊版容器中提供好處。 不過,幾乎每個容器都支援持續性,因此優化控制項的持續性程式碼可能會改善其在任何容器中的效能。 如果您的控制項特別要與一種特定類型的容器搭配使用,您可能會想要研究該容器支援哪些優化。 不過,一般而言,您應該嘗試實作適用于您特定控制項的其中許多技術,以確保控制項在各種容器中也能執行。

您可以在 [控制項設定 ] 頁面上, 透過 MFC ActiveX 控制項精靈 實作其中許多優化。

MFC ActiveX 控制項精靈 OLE 優化選項

MFC ActiveX 控制項精靈中的控制項設定 動作 其他相關資訊
顯示 時啟動核取方塊 Clear 關閉 [顯示時啟動] 選項
無視窗啟用 核取方塊 選擇 提供無視窗啟用
未裁剪的裝置內容 核取方塊 選擇 使用未裁剪的裝置內容
無閃爍啟用 核取方塊 選擇 提供 Flicker-Free 啟用
非使用 中時滑鼠指標通知核取方塊 選擇 非現用時提供滑鼠互動
優化繪圖程式碼 核取方塊 選擇 最佳化控制項繪圖

如需實作這些優化之成員函式的詳細資訊,請參閱 COleControl

如需詳細資訊,請參閱

另請參閱

MFC ActiveX 控制項