Microsoft Word 对象模型

理解Word的对象模型是对其编程的基础,Word以层次结构组织对象。

Word提供了数百个可与之交互的对象。这些对象排列在一个与用户界面密切相关的层次结构中。层次结构如图所示,顶部的对象是Application对象。此对象表示Word的当前实例。Application对象包含Document、Selection、Bookmark和Range对象。这些对象各自都有很多方法和属性,可以访问这些方法和属性来操作对象或与对象交互。图中存在许多重叠,是因为可以通过多种方式来访问相同类型的对象。

Application对象表示Word应用程序,是其他所有对象的父级。它的所有成员通常作为一个整体应用于 Word。可以使用该对象的属性和方法来控制Word环境。在应用程序级外接程序项目中,您可以使用ThisAddIn类的Application字段访问Application对象。在文档级项目中,可以使用ThisDocument类的Application属性访问Application对象。

Document对象是Word编程的中枢。它表示文档及其所有内容。当打开文档或创建新文档时,就创建了新的Document对象,该对象被添加到Application对象的Documents集合中。具有焦点的文档称为活动文档。它由Application对象的ActiveDocument属性表示。

Selection对象表示当前选择的区域。在Word用户界面中执行某项操作(例如,对文本进行加粗)时,应首先选择或突出显示文本,然后应用格式设置。Selection对象始终存在于文档中。如果未选中任何对象,它表示插入点。此外,所选内容可以包含多个不连续的文本块。

Range对象表示文档中的一个连续的区域,由一个起始字符位置和一个结束字符位置定义。Range对象的数量并不局限于一个。可以在同一文档中定义多个Range对象。

更多信息参见 Office VBA Reference

二十四史简介——南史

《南史》是合南朝宋、齐、梁、陈四代历史为一编的纪传体史著,记事起自南朝宋武帝刘裕永初元年(公元420年),止于陈后主陈叔宝祯明三年(公元589年),记述南朝四代一百七十年的历史。《南史》与《北史》为姊妹篇,是由李大师及其子李延寿两代人编撰完成的。
李大师(公元570–628年),相州(今河南安阳)人,南朝末期由隋入唐的历史学家。他认为南北朝时期各朝的断代史,彼此孤立,记事重复,又缺乏联系,打算采用编年体,撰写《南史》与《北史》,使南朝与北国各代的历史,分别统编于这两部史著之中。隋末,李大师曾参加农民起义领袖窦建德建立的夏政权,充任礼部侍郎。因此,在唐初流放到西会州(今甘肃境内),后遇赦放回,死于唐太宗贞观二年(公元628年),所撰《南史》与《北史》未能成书。此后,由李延寿继续撰成,合称为《南北史》。
李延寿,字遐龄,生卒年代已不可确知,大约卒于唐高宗仪凤年间(公元676–679年),唐初历史学家,曾任崇贤馆学士,官至符玺郎。唐太宗时,李延寿曾参加《隋书》纪、传、志和《晋书》的编写,又参预唐朝国史的编纂工作。但他主要成就在于承接其父未竟的事业,完成《南史》与《北史》的写作。
《南史》以《宋书》、《南齐书》、《梁书》及《陈书》为本,删繁就简,重新编纂,成为史林新著,成书于唐高宗显庆四年(公元659年)。《南史》有本纪和列传,无表、志。
本纪十卷,列传七十卷,共八十卷。其编撰方法按朝代顺序、帝王在位先后,排列各朝帝王、宗室、诸王、大臣等纪传。
本纪中有《宋本纪》三卷,《齐本纪》二卷,《梁本纪》三卷,《陈本纪》二卷。列传中除专传外,列“类传”九种。
《南史》文字简明,事增文省,在史学上占有重要地位。其不足处在于作者突出门阀士族地位,过多采用家传形式。例如将不同朝代的一族一姓人物不分年代,集中于一篇中叙述,实际成为大族族谱。《南史》《北史》中,某些传文亦有重复现象。

Microsoft Excel 对象模型

理解Excel的对象模型是对其编程的基础,Excel以层次结构组织对象。

一个Excel应用程序就是一个Application,全局的对象比如菜单,工具条都属于Application对象。
一个Application可以包含很多个Workbook(Workbooks),具体而言就是,可以同时打开很多个工作薄(Workbooks),但是某一时刻只有一个工作薄(Workbook)处于可编辑状态,这个工作薄就叫活动工作薄(ActiveWorkbook)。
一个Workbook可以包含很多个Worksheet(Worksheets),具体而言就是,一个工作薄(Workbooks)可以包含很多工作表(Worksheets),但是某一时刻只有一个工作表(Worksheet)处于可编辑状态,这个工作表就叫活动工作表(ActiveWorksheet)。
一个Workbook可以包含很多个Shapes对象,工作表中还可以包含一些图表、标记、注释、控件等,这些都是浮在Sheet页上的,统称为Shapes,其中使用最多的是图表(Charts)。
一个Worksheet可以包含很多个Range对象,具体而言,一个工作表里面有很多个单元格,单元格范围用Range表示,Range可以是一个单元格也可以是多个单元格,单元格都是嵌入到Sheets中的。

更多信息参见 Office VBA Reference

二十四史简介——周书

《周书》,五十三卷,其中本纪八卷,列传四十二卷。唐令孤德主编,参加编写的有岑文本和崔仁师。
北魏末年,政治动荡,乱事遍起。出身于北魏北方六镇中武川镇的宇文泰,率领一批以武川镇人为主的鲜卑族军队,联合关陇地区的汉人豪族武装,建立起西魏政权。后宇文泰的第三子宇文觉在公元557年代魏建周,史称北周。西魏、北周这两个前后相续的政权,统治区域大致包括今天陕西、宁夏、甘肃和四川的大部,山西西南部、湖北西部及河南西部。与东边的东魏、北齐和江南的梁、陈成鼎足之势。
公元577年,北周灭北齐,统一中国北方。
公元581年,杨坚代周,建立隋朝。
《周书》虽以“周”题名,但实际上记述了从公元534年东、西魏分裂到杨坚代周为止四十八年的西魏、北周的历史。
《周书》由于根据的资料贫乏,再加上它所记载的人物多是本朝显官的祖先,因而显得单薄而不尽合事实。但它基本上反映了宇文政权的建立,建立后三个封建政权之间的战争,以及宇文政权上层集团内部斗争的情况,是今天研究和了解西魏、北周历史最基本、最原始的一部史书。

AutoCAD 对象模型

理解AutoCad的对象模型是对其编程的基础,AutoCad以层次结构组织对象。

在顶层是Application对象(即AutoCad 本身),其他对象均为Application对象的子对象。在Application对象下面是Preferences(优先设置)和Document(文档)对象,通过Preferences对象可以对AutoCad Tools>Preferences菜单项中的几乎每一个选项进行访问和修改,以获取或改变AutoCad的优先设置。

Document对象是控制AutoCad图形文件的直接对象,它代表某一个装入的CAD图形文件(一般设为当前激活的文件)。Document对象下面有Model Space(模型空间)和Paper Space(图纸空间)对象及Blocks(块)、Layers (层)、Plot(出图)、Selectionsets(选择集)、 views(视图)、 utility(功能)等一系列对象(集合),其含义与AutoCad中相似。

Model Space是当前图形文件中图形实体,如直线、圆、多义线等的集合,每个实体即是一个对象,可通过属性和方法改变实体或生成新实体。

对非图形实体,如层(layer)、线形(line type)等的访问则通过访问Document对象下面的相应的集合类型的子对象,如Layers 、LineTypes等来实现。

集合类型的对象可以使用VB中所有的集合操作方法。

Plot对象提供了访问Plot对话框中各选项的桥梁,使应用程序具有用不同方式控制AutoCad出图的能力。

Utility对象使用户在AutoCad命令行与CAD交互成为可能,通过它可以处理整型、浮点型、字符型等用户输入,还可以接受点(Point)或角(Angle)等AutoCad的特殊量。

更多信息参见 Autodesk product documentation