VB.NET Word對(duì)象模型兩大要點(diǎn)介紹
隨著時(shí)代的進(jìn)步,計(jì)算機(jī)走進(jìn)了我們的生活中。成為我們不可缺少的東西,而Word文檔是實(shí)際工作學(xué)習(xí)中最為常用的文檔格式之一。一些傳統(tǒng)的由人工完成工作逐漸轉(zhuǎn)向由計(jì)算機(jī)來(lái)處理。計(jì)算機(jī)自動(dòng)組卷系統(tǒng)便是一個(gè)典型的例子。為了追求更高的效率,一些計(jì)算機(jī)自動(dòng)組卷系統(tǒng)的單位用戶要求由軟件輸出Word格式的試卷不需排版直接供印刷使用。由于Microsoft Office套件的普及,Word文檔、電子表格文檔、電子幻燈片等文檔日漸常用。雖然在Office中各個(gè)程序的文檔可以方便地轉(zhuǎn)換,但是這種轉(zhuǎn)換是以失去文檔原本的格式為代價(jià)的。例如,在自動(dòng)組卷系統(tǒng)中,存儲(chǔ)在Access數(shù)據(jù)庫(kù)中的試卷可以通過(guò)Access提供的導(dǎo)出功能產(chǎn)生Word文檔,但產(chǎn)生的文檔是無(wú)格式的,需花費(fèi)大量時(shí)間重新排版方可符合用戶在試卷格式上的要求。
VB.NET Word對(duì)象模型
1、Word對(duì)象模型層次結(jié)構(gòu)
對(duì)象是 Visual Basic的基石,幾乎在 Visual Basic 中的每個(gè)操作都與修改對(duì)象有關(guān)。Word 的任何元素(如文檔、表格、段落、域、書簽等)都可以用 Visual Basic 中的對(duì)象來(lái)代表。對(duì)象代表一個(gè) Word 的元素,如文檔、段落、書簽或單個(gè)的字符。集合也是一個(gè)對(duì)象,該對(duì)象包含其他數(shù)個(gè)對(duì)象,通常這些對(duì)象屬于相同的類型,例如,一個(gè)集合對(duì)象中可包含文檔中的所有書簽對(duì)象。通過(guò)使用屬性和方法,可以修改單個(gè)的對(duì)象,也可修改整個(gè)的對(duì)象集合。Microsoft Word Visual Basic Word對(duì)象提供一套完整的模型,這是一個(gè)以Application為頂層對(duì)象的對(duì)象層次結(jié)構(gòu)。其結(jié)構(gòu)如圖-1所示。
對(duì)象由兩種類型的成員構(gòu)成,一種是屬性,第二種成員是方法。屬性是對(duì)象的一個(gè)特性或者該對(duì)象行為的一個(gè)方面。例如,文檔屬性包含名稱、內(nèi)容、保存狀態(tài)以及是否啟用修訂。要更改一個(gè)對(duì)象的特征,可以修改其屬性值。要設(shè)置一個(gè)屬性的值,需在對(duì)象的后面緊接一個(gè)句點(diǎn)、屬性名稱、一個(gè)等號(hào)及新的屬性值。下面的示例在"MyDoc.doc"文檔中啟用修訂。
- Documents("MyDoc.doc").TrackRevisions = True
方法是對(duì)象可以進(jìn)行的動(dòng)作。例如,只要文檔可以打印,Document 對(duì)象就具有 PrintOut 方法。方法通常都帶有參數(shù),限定動(dòng)作將如何進(jìn)行。
- ActiveDocument.PrintOut From:=1, To:=3
在大多數(shù)情況下,方法是動(dòng)作,而屬性是性質(zhì)。使用方法將導(dǎo)致針對(duì)對(duì)象的某些事情發(fā)生,而使用屬性則會(huì)返回對(duì)象的信息,或者引起對(duì)象的某個(gè)性質(zhì)的改變。
2、Document對(duì)象和Documents 集合對(duì)象
在 Visual Basic 中,可使用 Document 對(duì)象或 Documents 集合對(duì)象的方法來(lái)修改文件。Document 對(duì)象是本文用來(lái)創(chuàng)建Word 文檔的主要對(duì)象。Word對(duì)象模型中Documents(Document)對(duì)象集(或Document)對(duì)象的結(jié)構(gòu)如圖-2所示。
其中的 Paragraphs 集合對(duì)象與PageSetup對(duì)象將是下文的主角。Paragraphs 集合對(duì)象是由選定內(nèi)容、范圍或文檔中的 Paragraph 對(duì)象組成的集合。PageSetup 對(duì)象代表頁(yè)面設(shè)置描述。PageSetup 對(duì)象包含了文檔的所有頁(yè)面設(shè)置屬性(左邊距、下邊距、紙張大小,等等)。在熟悉了Word 對(duì)象模型的基礎(chǔ)上,我們可以使用Document 對(duì)象對(duì)Word 文檔進(jìn)行各種操作。
2.1 新建一篇文檔
Documents 集合包含所有打開的文檔。要新建一篇文檔,可使用 Add 方法將一個(gè) Document 對(duì)象添至 Documents 集合。新建文檔的方法之一是使用Add方法。Add 方法將返回 Document 對(duì)象,該對(duì)象引用新文檔。在下面的示例中,把 Add 方法返回的 Document 對(duì)象賦予一個(gè)對(duì)象變量 newDoc。然后設(shè)置該 Document 對(duì)象的幾種屬性和方法。通過(guò) newDoc 對(duì)象變量,可以很容易地控制新文檔。
-
Set newDoc = Documents.Add
-
With newDoc
-
.Content.Font.Name = "Arial"
-
.SaveAs FileName:="Sample.doc"
-
End With
2.2 打開文檔
要打開一篇現(xiàn)有的文檔,可使用 Documents 集合的 Open 方法。下面的代碼打開名為 MyDocument.doc 的文檔(該文檔位于"MyFolder"文件夾中)。
-
Documents.Open FileName:="C:\MyFolder\MyDocument.doc"
2.3 保存一篇現(xiàn)有文檔
要保存一篇文檔,可使用 Document 對(duì)象的 Save 方法。下面的代碼保存名為 Sales.doc 的文檔。
-
Documents("Sales.doc").Save
如果對(duì) Documents 集合應(yīng)用 Save 方法,可以保存所有打開的文檔。下面的代碼保存所有打開的文檔。
-
Documents.Save
2.4 保存一篇新文檔
要保存一篇文檔,可使用 Document 對(duì)象的 SaveAs 方法。下面的代碼將活動(dòng)文檔保存于當(dāng)前文件夾,取名為"Temp.doc"。
-
ActiveDocument.SaveAs FileName:="Temp.doc"
FileName 參數(shù)可以只包含文件名,也可包含完整的路徑(例如"C:\Documents\Temporary File.doc")。
2.5 關(guān)閉文檔
要關(guān)閉單個(gè)文檔,可使用 Document 對(duì)象的 Close 方法。下面的代碼關(guān)閉并保存名為 Sales.doc 的文檔。
-
Documents("Sales.doc").Close SaveChanges:=wdSaveChanges
可應(yīng)用 Documents 集合的 Close 方法關(guān)閉所有的文檔。下面的代碼在不保存修改的情況下關(guān)閉所有的文檔。
-
Documents.Close SaveChanges:=wdDoNotSaveChanges
上邊簡(jiǎn)單的介紹了VB.NET Word對(duì)象模型和文檔的問(wèn)題,希望會(huì)給大家?guī)?lái)幫助。
【編輯推薦】






