C++Builder入门32.pptVIP

  1. 1、本文档共17页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
CBuilder入门32

第三十二章COM程式的應用 COM程式透過介面的宣告讓不同語言所開發的程式在遵循該介面標準下可以彼此呼叫,達到程式間共享的目的,而OLE Automation則是以COM架構為基礎所發展的一種規格,讓應用程式間可以以物件的方式對其他應用程式所公開的介面進行呼叫的動作,達到操作該應用程式的目的。本節即透過OLE Automation的使用來介紹如何在程式中和Microsoft Office程式進行溝通,達到使用Microsoft Office的目的。 大綱 32-1 控制Microsoft Word 32-2 控制Microsoft Excel 32-1. 控制Microsoft Word 控制Microsoft Office的主要方法為使用OLE Automation。OLE Automation為OLE 2.0的規格之一,所謂的OLE Automation為一個應用程式或者DLL產生自動化物件(Automation object)給另外一個應用程式使用。其中,產生自動化物件的應用程式稱為OLE Server(OLE伺服端);而使用自動化物件的應用程式稱為OLE Controller(OLE控制端)。 在OLE Automation中,OLE Server產生的Automation object會向外界提供一些方法函式或是屬性供OLE Controller透過OLE機制呼叫使用,進而驅動OLE Server內的物件功能,達到使用OLE Server的目的。最基本的OLE Automation應用為Microsoft Word和Microsoft Excel中的插入物件功能。透過插入物件的方式,使用者可以在Microsoft Word中插入方程式編輯器所編輯的方程式或是Microsoft Excel所產生的圖表。有興趣的讀者可以開啟手邊的Microsoft Word去試著在文件檔中插入物件,而透過OLE Automation方式插入的物件在Microsoft Word中必須藉助OLE Container(OLE容器)來存放,也就是說OLE Controller若要在控制端程式內顯示產生的OLE物件,必須定義一個OLE Container來存放這個產生的OLE物件。 32-1. 控制Microsoft Word 除了上述的應用外,透過OLE Automation機制,我們亦可在自己撰寫的程式中加入控制Microsoft Office的動作,如此一來就可直接利用Microsoft Office的強大功能而不需自己撰寫相同的程式功能。在下面小節中,我們將對如何控制Microsoft Word和Microsoft Excel進行介紹。 32-1. 控制Microsoft Word 【操作實例32-1】列印Word文件內容 透過OLE Automation方式開啟Microsoft Word檔案,並提供列印和預覽列印的功能。 建立新專案,設計表單畫面如下圖所示。 在按鈕的OnClick事件中加入對應的程式碼。另外,在程式碼中加入#include ComObj.hpp的宣告。 Main.cpp程式碼 執行程式。 32-1. 控制Microsoft Word 【執行畫面】 執行程式,按下【開啟】按鈕即可開啟Word文件;按下【列印】和【預覽列印】按鈕即可列印或預覽Word文件。 32-1. 控制Microsoft Word 【實例說明】 本程式的運作方式為透過CreateOleObject函式的呼叫建立一個Microsoft Word應用程式物件,並據此開啟指定檔名的Word文件,再透過屬性和函式的呼叫執行預覽和列印文件的動作。其中,OleProcedure(“PrintOut”)呼叫Word內執行列印動作的Procedure;OleProcedure(“PrintPreview”)呼叫預覽列印的Procedure。所謂的Procedure即為不具回傳值的函式,也就是C++中Void宣告的函式。 上述的PrintOut和PrintPreview函式即為Word開放給OLE介面的函式,並不是C++ Builder提供的函式內容,也因此無法在C++ Builder提供的線上Help中得到幫助,亦即C++ Builder僅提供呼叫和控制OLE物件的方法,至於要呼叫OLE物件中的哪個屬性或是函式則取決於OLE Server端提供的內容。 32-1. 控制Microsoft Word C++ Builder下提供的OLE控制方法有: OleProcedure:負責執行OLE Server端中各個物件內不具回傳值的函式。 OleFunction:執行OLE物件中具回傳值的函式,並傳回執行後的回傳值。 OlePropertySet:設定OL

文档评论(0)

jgx3536 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:6111134150000003

1亿VIP精品文档

相关文档