MFCBIND 範例:主動式文件容器
更新:2007 年 11 月
MFCBIND 範例將示範如何使用 MFC 中的主動式文件容器支援類別來建立主動式文件 (之前稱為 DocObject) 容器。「MFC 繫結器」範例是一個 SDI 應用程式,可以使用 COleDocObjectItem 類別來表示 MFC 文件中的內嵌主動式文件。MFCBIND 的運作很像隨附於 Microsoft Office 的「Office 文件夾」應用程式。
安全性注意事項: |
---|
這個程式碼範例僅供概念說明之用,同時因為範例中的程式碼撰寫並沒有周全的顧及所有安全性問題,所以本範例不適用於實際執行的應用程式或網站中。如果使用者擅自將範例程式碼用於其他意圖而導致連帶事件或重大損害時,Microsoft 將不承擔任何責任。 |
若要取得範例和指示以便進行安裝:
按一下 Visual Studio [說明] 功能表上的 [範例]。
如需詳細資訊,請參閱尋找範例檔案。
最新版的完整範例清單可從 Visual Studio 2008 範例網頁 (英文) 取得。
您也可以將範例置於電腦硬碟中。根據預設,範例和讀我檔案都會複製到 \Program Files\Visual Studio 9.0\Samples\ 下的資料夾中。對於所有的 Visual Studio Express 版,所有範例都可在線上找到。
建置和執行範例
若要建置並執行 MFCBIND 範例
開啟 mfcbind.sln 方案。
在 [建置] 功能表上,按一下 [建置]。
啟動應用程式並按一下 [Section] 功能表的 [Add] 功能表項目,將您所要的區段數量加入至繫結器中。
影像、Word 和 Excel 文件都是區段。將區段加入至繫結器時,您可以直接從「MFC 繫結器」應用程式編輯該區段,就像在該區段的原生應用程式中進行作業的方式一樣。
在繫結器中完成區段編輯之後,請在 [File] 功能表上按一下 [Save],儲存該繫結器。[Save] 會將繫結器的區段儲存至單一檔案。當您稍後重新開啟繫結器時,就可以使用保持為之前儲存狀態的區段。
MFC 中的主動式文件
在 MFC 中,主動式文件的處理方式,就和一般可就地編輯的內嵌項目的處理方式一樣。COleDocument 衍生的類別仍然會維護目前內嵌項目的清單。已經被 COleClientItem 衍生的 COleDocObjectItem 類別所取代的 COleClientItem 物件,是代表 COleDocument 中的內嵌項目。這些 COleDocObjectItem 衍生項目是由 COleDocument 衍生類別在清單中所維護的。然而,主動式文件會在就地啟動時,佔用整個檢視的工作區 (Client Area)。主動式文件容器也擁有完整的 [說明] 功能表控制,這點跟舊版的就地內嵌不一樣。[說明] 功能表含有主動式文件容器和伺服器的功能表項目。由於主動式文件容器擁有 [說明] 功能表,因此它可以將 [說明] 功能表的伺服器部分訊息傳遞給伺服程式。[說明] 功能表的合併和訊息傳遞功能是完全由 MFC 架構處理。
關鍵字
本範例會使用下列關鍵字:
COleClientItem::FinishCreate, COleClientItem::GetIconFromRegistry, IOleObject::GetUserClassID, COleClientItem::OnChange, COleClientItem::OnChangeItemPosition, COleClientItem::OnGetItemPosition, COleClientItem::OnActivate, COleDocument::GetInPlaceActiveItem, COleClientItem::Deactivate, COleClientItem::CreateNewItem, COleClientItem::DoVerb, COleDocObjectItem::COleDocObjectItem, COleClientItem::CreateFromFile, COleClientItem::Activate, COleDocObjectItem::OnPreparePrintin, COleDocObjectItem::OnPrint, SystemParametersInfo, MeasureItem, DrawItem, GetSystemMetrics, SelectObject
注意事項: |
---|
部分範例 (包括本範例) 尚未經過改寫,無法反映出目前在 Visual C++ 精靈、程式庫以及編譯器方面的變更,不過還是可以示範如何完成您要進行的工作。 |