![第三十二章CBuilderCOM程式的開(kāi)發(fā)_第1頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-2/16/73faef6a-e55d-497d-859b-b844e04ff02f/73faef6a-e55d-497d-859b-b844e04ff02f1.gif)
![第三十二章CBuilderCOM程式的開(kāi)發(fā)_第2頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-2/16/73faef6a-e55d-497d-859b-b844e04ff02f/73faef6a-e55d-497d-859b-b844e04ff02f2.gif)
![第三十二章CBuilderCOM程式的開(kāi)發(fā)_第3頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-2/16/73faef6a-e55d-497d-859b-b844e04ff02f/73faef6a-e55d-497d-859b-b844e04ff02f3.gif)
![第三十二章CBuilderCOM程式的開(kāi)發(fā)_第4頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-2/16/73faef6a-e55d-497d-859b-b844e04ff02f/73faef6a-e55d-497d-859b-b844e04ff02f4.gif)
![第三十二章CBuilderCOM程式的開(kāi)發(fā)_第5頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-2/16/73faef6a-e55d-497d-859b-b844e04ff02f/73faef6a-e55d-497d-859b-b844e04ff02f5.gif)
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第三十二章COM程式的應(yīng)用COM程式透過(guò)介面的宣告讓不同語(yǔ)言所開(kāi)發(fā)的程式在遵循該介面標(biāo)準(zhǔn)下可以彼此呼叫,達(dá)到程式間共享的目的,而OLE Automation則是以COM架構(gòu)為基礎(chǔ)所發(fā)展的一種規(guī)格,讓?xiě)?yīng)用程式間可以以物件的方式對(duì)其他應(yīng)用程式所公開(kāi)的介面進(jìn)行呼叫的動(dòng)作,達(dá)到操作該應(yīng)用程式的目的。本節(jié)即透過(guò)OLE Automation的使用來(lái)介紹如何在程式中和Microsoft Office程式進(jìn)行溝通,達(dá)到使用Microsoft Office的目的。 大綱32-1控制Microsoft Word32-2控制Microsoft Excel32-1. 控制Microsoft Word控制Microso
2、ft Office的主要方法為使用OLE Automation。OLE Automation為OLE 2.0的規(guī)格之一,所謂的OLE Automation為一個(gè)應(yīng)用程式或者DLL產(chǎn)生自動(dòng)化物件(Automation object)給另外一個(gè)應(yīng)用程式使用。其中,產(chǎn)生自動(dòng)化物件的應(yīng)用程式稱為OLE Server(OLE伺服端);而使用自動(dòng)化物件的應(yīng)用程式稱為OLE Controller(OLE控制端)。在OLE Automation中,OLE Server產(chǎn)生的Automation object會(huì)向外界提供一些方法函式或是屬性供OLE Controller透過(guò)OLE機(jī)制呼叫使用,進(jìn)而驅(qū)動(dòng)OLE S
3、erver內(nèi)的物件功能,達(dá)到使用OLE Server的目的。最基本的OLE Automation應(yīng)用為Microsoft Word和Microsoft Excel中的插入物件功能。透過(guò)插入物件的方式,使用者可以在Microsoft Word中插入方程式編輯器所編輯的方程式或是Microsoft Excel所產(chǎn)生的圖表。有興趣的讀者可以開(kāi)啟手邊的Microsoft Word去試著在文件檔中插入物件,而透過(guò)OLE Automation方式插入的物件在Microsoft Word中必須藉助OLE Container(OLE容器)來(lái)存放,也就是說(shuō)OLE Controller若要在控制端程式內(nèi)顯示產(chǎn)生的
4、OLE物件,必須定義一個(gè)OLE Container來(lái)存放這個(gè)產(chǎn)生的OLE物件。 32-1. 控制Microsoft Word除了上述的應(yīng)用外,透過(guò)OLE Automation機(jī)制,我們亦可在自己撰寫(xiě)的程式中加入控制Microsoft Office的動(dòng)作,如此一來(lái)就可直接利用Microsoft Office的強(qiáng)大功能而不需自己撰寫(xiě)相同的程式功能。在下面小節(jié)中,我們將對(duì)如何控制Microsoft Word和Microsoft Excel進(jìn)行介紹。OLE Automation關(guān)係圖32-1. 控制Microsoft Word【操作實(shí)例32-1】列印Word文件內(nèi)容透過(guò)OLE Automation方式
5、開(kāi)啟Microsoft Word檔案,並提供列印和預(yù)覽列印的功能。1. 建立新專案,設(shè)計(jì)表單畫(huà)面如下圖所示。2. 在按鈕的OnClick事件中加入對(duì)應(yīng)的程式碼。另外,在程式碼中加入#include 的宣告。 Main.cpp程式碼3. 執(zhí)行程式。32-1. 控制Microsoft Word 【執(zhí)行畫(huà)面】 執(zhí)行程式,按下【開(kāi)啟】按鈕即可開(kāi)啟Word文件;按下【列印】和【預(yù)覽列印】按鈕即可列印或預(yù)覽Word文件。32-1. 控制Microsoft Word 【實(shí)例說(shuō)明】 本程式的運(yùn)作方式為透過(guò)CreateOleObject函式的呼叫建立一個(gè)Microsoft Word應(yīng)用程式物件,並據(jù)此開(kāi)啟指定檔
6、名的Word文件,再透過(guò)屬性和函式的呼叫執(zhí)行預(yù)覽和列印文件的動(dòng)作。其中,OleProcedure(“PrintOut”)呼叫Word內(nèi)執(zhí)行列印動(dòng)作的Procedure;OleProcedure(“PrintPreview”)呼叫預(yù)覽列印的Procedure。所謂的Procedure即為不具回傳值的函式,也就是C+中Void宣告的函式。 上述的PrintOut和PrintPreview函式即為Word開(kāi)放給OLE介面的函式,並不是C+ Builder提供的函式內(nèi)容,也因此無(wú)法在C+ Builder提供的線上Help中得到幫助,亦即C+ Builder僅提供呼叫和控制OLE物件的方法,至於要呼叫O
7、LE物件中的哪個(gè)屬性或是函式則取決於OLE Server端提供的內(nèi)容。 32-1. 控制Microsoft Word C+ Builder下提供的OLE控制方法有: OleProcedure:負(fù)責(zé)執(zhí)行OLE Server端中各個(gè)物件內(nèi)不具回傳值的函式。 OleFunction:執(zhí)行OLE物件中具回傳值的函式,並傳回執(zhí)行後的回傳值。 OlePropertySet:設(shè)定OLE物件的屬性值。 OlePropertyGet:讀取OLE物件的屬性值。 然而,若是不知道OLE Server端提供的OLE物件中有哪些函式或是屬性可供使用,則縱使知道上述方法亦昰無(wú)用武之地。因此,知道OLE Server提供的
8、OLE物件才昰使用OLE Automation的關(guān)鍵。 對(duì)於Microsoft Office來(lái)說(shuō),所有提供的物件皆可在所附的Visual Basic編輯器中透過(guò)瀏覽物件的方式顯示,整個(gè)步驟如下頁(yè)圖示。 32-1. 控制Microsoft Word檢視物件流程檢視到的物件若對(duì)說(shuō)明不甚了解還可再透過(guò)Microsoft Visual Basic主選單中的【說(shuō)明】【Microsoft Visual Basic說(shuō)明】得到更詳細(xì)的說(shuō)明。至於其他OLE Automation提供的物件與方法則請(qǐng)參考該產(chǎn)品的相關(guān)說(shuō)明文件。底下,我們?cè)偻高^(guò)OLE提供的方法對(duì)Word文件進(jìn)行存取的動(dòng)作。32-1. 控制Micros
9、oft Word【操作實(shí)例32-2】存取Word文件內(nèi)容1. 開(kāi)啟新專案,設(shè)定表單畫(huà)面如下:32-1. 控制Microsoft Word2. 輸入各按鍵對(duì)應(yīng)的程式碼,並加入#include 標(biāo)頭宣告。Main.cpp程式碼3. 執(zhí)行程式?!緢?zhí)行結(jié)果】點(diǎn)選【匯入文字內(nèi)容】即可匯入所選的Word文件內(nèi)容;而點(diǎn)選【匯出文字內(nèi)容】即可把Memo輸入框中的文字匯出至指定的Word檔案中。32-1. 控制Microsoft Word點(diǎn)選【匯出文字內(nèi)容】選取Word文件匯入文件後的結(jié)果32-1. 控制Microsoft Word選取所要儲(chǔ)存的檔案匯出後的Word文件內(nèi)容32-2. 控制Microsoft E
10、xcel 和控制Microsoft Word相同,同樣使用OLE Automation機(jī)制來(lái)執(zhí)行 Excel所提供的函式與屬性,底下僅以操作實(shí)例直接說(shuō)明。 【操作實(shí)例32-3】讀取Microsoft Excel儲(chǔ)存格資料 從指定的Excel檔案中讀取儲(chǔ)存格的資料。該指定Excel檔案(Grade.xls)附於本實(shí)例的程式碼資料夾內(nèi),格式如下。32-2. 控制Microsoft Excel1. 開(kāi)啟新專案,設(shè)計(jì)表單畫(huà)面如下:2. 在【匯入】按鈕的OnClick事件中加入讀取Excel內(nèi)容的程式片段。此外,在程式碼最前端加入#include 這行引入標(biāo)頭檔的宣告。 Main.cpp程式碼3. 執(zhí)行程式。
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 現(xiàn)代小區(qū)火災(zāi)應(yīng)急救援隊(duì)伍的實(shí)戰(zhàn)化訓(xùn)練探討
- 現(xiàn)代企業(yè)員工激勵(lì)機(jī)制設(shè)計(jì)與實(shí)踐
- 班級(jí)環(huán)境衛(wèi)生與校園文化建設(shè)的結(jié)合
- 4《機(jī)械擺鐘》說(shuō)課稿-2023-2024學(xué)年科學(xué)五年級(jí)上冊(cè)教科版
- 2023七年級(jí)數(shù)學(xué)上冊(cè) 第3章 一次方程與方程組3.2 一元一次方程的應(yīng)用第1課時(shí) 等積變形和行程問(wèn)題說(shuō)課稿 (新版)滬科版
- Unit 4 Plants around us Part A Let's learn(說(shuō)課稿)-2024-2025學(xué)年人教PEP版(2024)英語(yǔ)三年級(jí)上冊(cè)
- 2024-2025學(xué)年新教材高中英語(yǔ) Unit 3 The world meets China預(yù)習(xí) 新知早知道1(教用文檔)說(shuō)課稿 外研版選擇性必修第四冊(cè)
- 2025日本食品業(yè)A公司特許合同樣本
- 2025年銀行擔(dān)保借款合同范本
- 1小蝌蚪找媽媽 說(shuō)課稿-2024-2025學(xué)年語(yǔ)文二年級(jí)上冊(cè)統(tǒng)編版
- 第十一章《功和機(jī)械能》達(dá)標(biāo)測(cè)試卷(含答案)2024-2025學(xué)年度人教版物理八年級(jí)下冊(cè)
- 2025年銷售部年度工作計(jì)劃
- 2024年蘇州工業(yè)園區(qū)服務(wù)外包職業(yè)學(xué)院高職單招職業(yè)適應(yīng)性測(cè)試歷年參考題庫(kù)含答案解析
- ESG表現(xiàn)對(duì)企業(yè)財(cái)務(wù)績(jī)效的影響研究
- DB3713T 340-2024 實(shí)景三維數(shù)據(jù)接口及服務(wù)發(fā)布技術(shù)規(guī)范
- 八年級(jí)生物開(kāi)學(xué)摸底考(長(zhǎng)沙專用)(考試版)
- (工作規(guī)范)公路預(yù)防性養(yǎng)護(hù)工作手冊(cè)
- 車間空調(diào)崗位送風(fēng)方案
- 使用錯(cuò)誤評(píng)估報(bào)告(可用性工程)模版
- 初一年級(jí)班主任上學(xué)期工作總結(jié)
評(píng)論
0/150
提交評(píng)論