Access講座
網站公告
·Access快速平臺QQ群號:84825014    ·Access快速開發平臺下載地址及教程    ·歡迎添加微信交流賬號:AccessoftChu    ·如何快速搜索本站文章|示例|資料    
您的位置: 首頁 > 技術文章 > 綜合其它

[轉帖]Office 編程技術——理解對象模型

時 間:2009-02-17 08:19:14
作 者:   ID:90  城市:上海
摘 要:[轉帖]Office 編程技術——理解對象模型
正 文:

Office 編程技術——理解對象模型

微軟公司供稿

對象是Microsoft Office 97應用程序的基本構成組塊;幾乎你在Visual
Basic中所作的每一件事情都包括了對對象的操作。在Office中,每個內
容和功能單元,——每個工作簿(Workbook),工作表(worksheet),
文檔(Document),文本范圍,幻燈等等——它們都是對象,你可以在
Visual Basic中進行可編程地控制。當你理解了對象是如何工作之后,
你就會準備在Office中進行自動的工作了。

對象模型概覽


在你通過編程對應用程序中的內容和功能進行訪問之前,很重要的一點就
是需要了解應用程序中的內容和功能是如何被分割成分離的對象的,以及
這些對象是如何被組織安排在一個繼承的模型里的。

什么是對象和對象模型

一個應用程序包含兩件事情:內容和功能。內容依賴于應用程序所包含的
文檔,以及包括在文檔中的字詞,數字,或是圖形;它還依賴于有關應用
程序中的獨立要素的屬性信息,例如說窗口的大小,圖形的顏色,或是一
個字詞的字體大小等等。功能依賴于你使用應用程序中的內容來進行工作
的所有方法——例如,打開,關閉,添加,刪除,拷貝,粘貼,編輯,或
是格式化應用程序中的要素。

應用程序中的內容和功能被分割為有關聯的內容和功能的不連續的單元,
叫做對象(Object)。你已經對一些這樣的對象非常熟悉了,例如說一
些用戶界面的要素: Microsoft Excel工作簿,工作表,以及表格表元范
圍;Word的文檔和小節;以及PowerPoint的介紹和幻燈片等等。

在一個應用程序中,最高級別的對象通常是Application對象,它就是應
用程序本身。例如,在Microsoft Excel對象模型中的Application對象就
是Microsoft Excel本身。在Application對象中包含了一些其它的對象,
這些對象只有在Application對象存在的時候(也就是說,當應用程序運行
的時候)你才可以訪問到它們。例如,Microsoft Excel的Application對
象包含了Workbook對象,而Word的Application對象中則包含了Document
對象。因為此Document對象的存在依賴于Word的Application對象的存
在,所以此Document對象被稱之為Application對象的子對象(child),
反過來,此Application對象被稱之為Document對象的父對象(parent)。


許多子對象又有它們自己的子對象。例如,在Microsoft Excel里,Workbook
對象包含了Worksheet對象,或者說,它是Worksheet對象的父對象,
Worksheet對象表示在Workbook對象中的所有的工作單。一個父對象可以擁有
多個子對象;例如,Word的Windows對象擁有Panes,Selection,以及
Object等子對象。同樣,一個子對象也可以擁有多個父對象;例如,Word的
Windows集合對象同時是Application對象和Document對象兩者的子對象。

對象組成應用程序的方法彼此之間按照它們被分開的內容的功能又
相互聯系起來,這叫做對象的分層結構(Object hierarchy)或是
對象的模型(Object model)。

注意:如果你在安裝Microsoft Office的過程中單擊了“典型安裝(Typical)
”,你將需要重新安裝以將你所想要的了解的應用程序的Visual Basic for
Application相應的幫助安裝進去。

另外為包含低級別的對象,在對象分層結構中的每個對象,它所包含的內容
和功能都能夠提供給該對象本身,以及在對象分層結構中處于該對象之下的
那些對象。在對象分層結構中的級別越高,則它的內容和功能的覆蓋范圍也
就寬。例如,在Microsoft Excel中,Application對象中包含了應用程序
窗口的大小已經退出此應用程序的功能;Workbook對象中包含了文件名稱
和工作簿的格式,以及存儲此工作簿的功能;在而Worksheet對象中則包含
了工作表的名稱以及刪除此工作表的功能。

你通常并不能接觸到你對文件的內容(例如在Microsoft Excel工作表中的數
值,或是在一個Word文檔中的文本)所想的事情,除非你已經在對象的分層
結構中相當多的級別里進行了移動,這是因為這些特殊的信息從屬于應用程
序中非常特殊的部分。換句話說,在一個工作表中的表元里面的值僅僅值提
供給那個表元,而不是工作表里的所有的表元,所以你不能在Worksheet對
象中直接存儲它。存儲在一個對象中的內容和功能同該對象的范圍都有這樣
本質的聯系。

總的說來,一個應用程序中的內容和功能被圍繞著該應用程序的對象模型中
的對象進行了分割。在對象分層結構中的對象聯合起來又包含了應用程序中
的所有內容和功能。對象們分別提供了對這些內容和功能中非常特殊的區域
的訪問。

什么是屬性和方法?

要接觸包含在一個對象中的內容和功能,你需要使用此對象的屬性和方法。
下面的Microsoft Excel例子使用了在Range對象中的Value屬性來設置一個
名稱為“Current.xls”的工作簿中的“Sales”工作表的B3表元的值。

Workbooks("Current.xls").Worksheets("Sales").Range("B3").Value = 3

在下面的例子里使用了Font對象中的Bold屬性來將“Sales”工作表中的
B3表元設置為加粗格式。

Workbooks("Current.xls").Worksheets("Sales").Range

Access軟件網官方交流QQ群 (群號:198348076)       access源碼網店

最新評論 查看更多評論(1)

2020/1/14 9:10:40水果
內容有殘缺

發表評論您的評論將提升作者分享的動力!快來評論一下吧!

用戶名:
密 碼:
內 容:
 

常見問答

技術分類

相關資源

關于我們 | 服務條款 | 在線投稿 | 友情鏈接 | 網站統計 | 網站幫助