VB423分类管理插件的设计教学内容.doc
《VB423分类管理插件的设计教学内容.doc》由会员分享,可在线阅读,更多相关《VB423分类管理插件的设计教学内容.doc(58页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、Good is good, but better carries it.精益求精,善益求善。VB423分类管理插件的设计-VB423WORD文档分类管理插件的设计3 Word对象模型3.1 Word中的对象模型(ObjectModel)什么是对象模型?简单地说,用户在Word中操作和改变的每一个东西都是一个对象,这些对象的相互关系组成了Word中的对象模型。在Word中,文档、对话框、文本框、图形、图表甚至Word本身都是对象,同时,这些对象都有自己的属性和方法,因此,用户可通过编程来访问这些已有对象,改变它们的属性,以完成某些较高级的功能。在对象模型中,还有一个重要的概念
2、是集合(collections),所谓集合,就是由一组相近对象的组合,它们隶属于另一个大对象,例如sentences、words和characters对象,就可看成一个集合,它们都隶属于Range对象,集合的重要属性是我们可以对之进行整体操作,当然也可对集合中的某个对象进行操作。3.2 Word对象模型 图1对象模型抽象图Application对象包含Document、Selection、Bookmark和Range对象。Word提供了数百个可与之交互的对象。这些对象包括:Application对象Document对象Selection对象Range对象Bookmark对象
3、Application对象表示Word应用程序,是其他所有对象的父级。它的所有成员通常作为一个整体应用于Word。可以使用该对象的属性和方法来控制Word环境。Document对象Microsoft.Office.Interop.Word.Document对象是Word编程的中枢。当打开文档或创建新文档时,就创建了新的Microsoft.Office.Interop.Word.Document对象,该对象被添加到Word的Documents集合中。焦点所在的文档叫做活动文档,由Application对象的ActiveDocument属性表示。4 系统分析和设计4.1 功能需
4、求分析Word是微软公司的Office系列办公组件之一,是目前世界上最流行的文字编辑软件,它无疑是现代办公中使用最多的字处理软件。现在已能把各种形式的信息资料存储到Word文档中,如文字、图片、超连接等。面对大量文档信息,对它们分类管理显得尤其重要。由于日常工作中要处理的文档越来越多,而如果不对其分类整理将造成需要时查找等麻烦。特别是处理文字文档较多的工作,如财务管理,文秘等工作。解决以上问题有两种方法可行:一、利用Windows对磁盘文件、文件夹的分级管理功能。如在D盘上新建几个文件夹,分别代表各类性质的文档。此方法解决了对文档的分类存储问题,但极不方便。如在使用文档时,只能找到某个盘下的某
5、个目录,再进行新建文档、删除文档、重命名文档等操作,当文档多且所分的等级较多时(就是盘符下面的文件夹级数多),将浪费时间,影响办公效率,当要求多次重复此等操作时,更显其弊端。二、开发Word插件。此插件在打开Word软件时被加载,以工具档里工具的形式出现。点击此工具,就可对文档进行各种随心所欲的操作,但不改变文档内容,也就是说此插件是基于文档的存储路径的,而不是基于文档本身。首先,插件基于文档的存储路径,因此“存取自由”是它的一个特色。用户可将文档存放在磁盘任何地方(建议不放在本地C盘或桌面),也包括来自网络上的文档路径,当磁盘空间有限的时候,可以充分体现这一优势。其次,插件允许用户对文档进行
6、任何操作。包括新建、打开、编辑、删除文档等等。此插件还有一个重要特点,就是以工具栏里的工具形式出现,在启动Word软件时被加载。因此它很“轻量级”,占用系统资源少,使用方便,容易卸载。4.2 数据存储结构分析系统的数据存储方式可有两种理想的选择:XML和Access关系数据库。XML提供了一套跨平台、跨网络、跨程序语言的数据描述方式,使不同系统之间的数据交换更加高效。但如果从更高的技术角度出发,就会发现,对XML文档简单的文件管理是远远不够的:低效的存储组织、索引查询技术,不提供事务、安全恢复机制,无法保证数据的完整性和一致性,没有并发控制、移植工具等。用XML可方便实现无限层分类目
7、录的保存。关系数据库是实体间联系是固定的,有良好的完整性支持,对具有一对多的层次关系,更为直接的描述现实世界,有良好的性能,存取效率较高,建立在严格的数学概念的基础上,概念单一,实体与实体间的联系都用关系表示,数据结构简单、清晰,存取路径对用户透明,有更高的数据独立性和更好的安全保密性。Access适用于小型商务活动,用以存贮和管理商务活动所需要的数据。Access不仅是一个数据库,而且它具有强大的数据管理功能,它可以方便地利用各种数据源,生成窗体(表单),查询,报表和应用程序等。使用MicrosoftAccess,可以在单一的数据库文件中管理所有的信息。基于系统需求分析和VisualBasi
8、c语言对Access数据库的强大支持,及Access自身具有的便捷、易使用等特点,系统选用Access数据库存储相关记录。4.3 数据库设计由于系统基于文档存储路径,操作修改对象大部分对于路径和相关记录,因此数据库只对文档的路径和相关记录进行存储,而不是文档。系统把记录分为三层,即三个部分,共三张表,分别用来存储目录、文件夹和文档路径。用表table1存储目录,表table2存储文件夹,表table3存储文档记录。如图:WORD文档分类管理插件的设计和实现摘 要随着计算机普及和计算机科学技术的发展,并且由于电子文档具备方便性、快捷性和易操作性,人们将大部分信息以电子文档形式
9、储存和归档。面对与日骤增的海量数据信息,对它们进行有效的整理和管理变得尤其重要。人们越来越期望能在统一的文档操作界面上,对各类文档信息进行收集收藏、整理归档,方便查询。本文详细介绍了Word文档分类管理软件的设计和实现。软件对用户需求做了充分的考虑,进行正确和较完整的设计,使得能在统一的文档界面上,方便地对磁盘上所有文档(可包括其它存储介质,如:移动硬盘等,文档指MicrosoftOffice里的Word文档,后缀名为)进行分类管理。文档管理功能包括:新建记录、打开文档、编辑记录、删除记录或文档、添加文档等。本软件以Word插件形式实现,在Word工具档里增加自定义工具,并实现上述各种功能。系
10、统根据com组件编程原理,用VisualBasic6.0实现了一个Word插件,并用Office2003Access保存文档分类信息。关键词:COM组件;Word插件;文档分类器 “义务驱动”教学的一个清楚特点就是给学生充沛的自在,使学生在完成义务的进程中一直处于主体位置,使学生的交往才干、协作看法、创新肉体等非智力要素失掉优化和提高,促进学生的片面开展。但是,义务驱动并非课堂教学的“永动机”。在高中信息技术课堂中实施“义务驱动”时通常会把“义务驱动”异化为“义务驱使”,使学生处在不时完成义务的“流水线”上,疲于应付。结合具体的教学实际,笔者发如今“义务驱动”实践运用中存在的效果主要
11、有:义务设计形式化,缺乏理想情境的创设;义务设计一刀切,缺乏层次性;“义务驱动”片面化,缺乏实际性;“义务驱动”方式化,缺乏驱动后的互动评价;“义务驱动”单一化,缺乏与其他教学方式的整合。如何构建和整合高效的教学形式?提出义务要无情境。在信息技术课的义务设计中,要大胆创新地设计具有某种情境的学习义务,把所要学习的内容巧妙地隐含在义务中,要有浓郁的生活和时代气息,与学生的学习、生活实践严密相连。只要这样才干更有效地调动学生的探求热情,激起学生积极地联想、思考,到达把握所学知识的目的。例如,一位教员在教学表格数据的图形化时,设计的义务是调查有关商场的商品销售状况,经了解很多学生对此类效果不感兴味。
12、采用这个义务去停止“驱动”教学,学生自动参与的积极性显然不高。设计义务要有层次。在“义务驱动”教学中,教员要充沛了解学生,因材施教,由浅入深、层层推进,让不同水平的学生都有不同水平的收获。因此,教员设计义务时应面向全体学生,在难度上有层次性。要有适宜于基础较好的学生的深层次义务,也要有适宜于基础相对差的学生的浅层次义务,并给予具体操作步骤和方法的指点,让他们尽快增加与其他学生的差距。处置义务要有实际。义务的处置应表现“让学生动起来”的战略,也就是“以教员为主导,学生为主体”,让学生来做学习的主人。在教学进程中,尽量让学生处于一种与丰厚生活相联络的“用中学,学中用”的实际情境中,使他们真正运用所
13、学知识处置实践效果。因此,在情境义务的处置进程中要注重实际性,让学生觉得与义务的交互就是自己与真实世界的交互。从某种水平上,学生觉得义务自身就是他自己感兴味的事,需求亲身入手完成。例如,在高中信息技术应用数据库治理信息这一章节的教学中,针对“体验网络数据库”的环节,笔者设计的义务是让学生登录“中关村在线”模拟攒机。给定相应的价位限制和其他条件,让学生针对自己不同的用途和需求,组装出自己满意的电脑。攒机完毕后,让学生展现、评价、交流自己的攒机方案。评价义务要有互动。在教学中,除了精心设计义务之外,评价异样是不容无视的重要方面。依据高中信息技术课的特点,应关注学生参与教学活动的态度,处置效果的才干
14、和发明性,笔者的做法是:在完成一个义务时,选择有代表性的学生演示与解说,把操作进程中的心得引见给其他学生,组织学生展开互动评价,让学生自己讨论、评点。在此基础上,教员及时对学生的学习状况做出反应。评价是为了促进学生进一步有效的学习,一次评价不只是对一段活动的总结,更是下一段活动的终点、导游和动力。“义务驱动”与其他教学形式要有整合。信息技术课程的内容十分丰厚,仅仅拘泥于一种教学方式,用单纯的“义务驱动”来教学,很轻易使学生局限于一种固定的学习套路,久而久之会抑制学生学习的积极性。因此,在“义务驱动”的具体运用中,应依据教学实践与其他教学方法灵敏结合,到达理想的教学效果。摘要:本文针对DFA最小
15、化时可能遇到的各种情形,给出最小化的通用算法,并通过具体实例加以验证。此算法有利于学生对编译原理课程中DFA最小化的学习和理解,同时让学生进一步了解此知识点在其他问题求解中的应用。关键词本文来自:计算机毕业网:有穷自动机(FA);确定有穷自动机(DFA);最小化1引言词法分析是编译程序的第一阶段,其实质是从描述单词构成的工具正规表达式,向识别单词的工具确定有限自动机(DFA)的等价转化。此过程包括正规表达式到非确定有限自动机(NFA)的转化、NFA到确定有限自动机(DFA)的转化和DFA的最小化(化简)三个环节。DFA最小化是转化的最后一步,也是有限自动机应用及实现方面的重要研究问题之一。它揭
16、示了状态之间的内在联系,既方便DFA存储实现,又可以提高自动识别单词的效率。本文在分析DFA最小化理论的基础上,针对转化过程中可能出现的各种情形,给出求DFAM的最小化DFAM的一种通用算法,并给出实例加以验证。2DFA最小化理论分析已知一确定有限自动机DFAM,s和t是M的任意两个不同的状态。DFA最小化问题涉及到以下几个重要概念:1)DFA的最小化定义:是指构造一个与DFAM等价且状态个数最少的DFAM,即等价最小DFAM,有L(M)=L(M)。2)等价状态:若从状态s出发能读出某个字而停于终态,从状态t出发也能读出同一个字而停于终态;反之,若从t出发能读出某个字而停于终态,则从s出发也能
17、读出同一个字而停于终态,则称s和t为等价状态。如图1中的状态6和状态7均只能读出若干b而停于终态。也可以定义为,若分别以s和t为始点,到达终态所识别字的字集相等,则称s和t为等价状态。如图1,以状态6为始点所识别的字集为b*,而以7为始点所识别的字集为bb*,即b*,所以6和7状态为等价状态。3)可区别状态:简言之,如果DFAM中的两个状态s、t不等价,则称s和t是可区别状态。即:以s和t为始点,到达终态所识别字的字集不相等。DFAM化简时的可区别状态可分为以下三种情形:非终态和终态是可区别的。因为,终态识别的字集中一定有字而DFAM中的非初态识别的字集中不可能有字。对同一个字w,s和t两个状
18、态,一个到达终态,另一个到达非终态,则s和t可区别。如状态1和状态3是可区别的,因为状态3遇b字符而到达终态6,即能识别字b,而状态1遇b字符而到达非终态2,即能识别以b开头的部分字,但不能识别b字。s和t两个状态,一个有a字符后继(a),另一个无a字符后继,则s和t可区别。如状态2和状态5是可区别的,因为状态2有b字符后继,能识别以b开头的部分字,而状态5没有b字符后继,不可识别以b开头的任何字。3上述概念中,等价状态和可区别状态是DFA最小化的两个重要依据。3DFA最小化求解算法改进确定有穷自动机的化简方法很多,文中以分割法介绍DFA的化简:一个DFAM最小化过程是在把M的状态集分割成一些
19、不相交的子集,使得任何不同的两子集的状态都是可区别的,而同一子集的中的任何两个状态都是等价的。最后,让每个子集选出一个代表,同时消除其他等价状态或者为每一个子集重新命名。那么给定DFAM,如何形成初始划分、进一步划分形成最少状态数的等价DFAM?如何解决DFA最小化过程中可能遇到的各种情形?下面介绍一种通用算法。3.1DFA状态转换矩阵的扩展一个DFA可以表示成一张状态转换矩阵。上图DFA的状态转换矩阵如下表1。其中的许多ø元素,表示当前状态没有以对应字符为弧的后继状态。按照此转换矩阵,由某一状态集求其对应字符的后继状态集是很方便的,例如I=1,2,3,4,5,其对应字符的后继状
20、态集为I=1,2,3,4,5a=3,4,ø,I=1,2,3,4,5b=2,6,7,ø。通常在教科书上,初始划分一般分为两个子集:终态组和非终态组。然后对形成的每个子集再进一步划分。但对后继状态集中的ø算法要特殊处理,因为它不属于任何已划分子集。现用一种通用算法解决DFA化简过程中的所有情形:设想在DFAM状态转换中有一个出错状态e,该状态为非终止状态,对于每个状态,若没有对应字符为弧的后继状态,均引一条弧到达出错状态e,并在弧上标注对应字符。扩展后的DFAM如图2所示,其所对应的状态转换矩阵如表2。3.2DFA最小化求解算法依据可区别状态的定义,可知出
21、错状态可区别于终态集和非终态集,因为出错状态e识别的字集为空集。因此,可以将初始划分为三个状态集(或子集)。改进的DFA最小化算法如下:已知:DFAM=(K,f,k0,kt),求最小状态DFAM(1)(1)构造状态的初始化划分:终态kt、非终态K-kt、出错状态e三个子集(2)(2)对施用过程PP构造新划分new(3)(3)如果new=,则令final=并继续步骤(4)否则,=new,重复(2)(4)为final中的每一子集选一代表,这些构成M的状态。若k是一代表且f(k,a)=t,令p是t组的代表,则M中有一转换f(k,a)=p。(5)删除其他等价状态和出错状态。过程PP:构造新的划分new
22、对每一个状态集G进行下述工作:将G划分为子集。G的两个状态s和t分在同一子集的充要条件是:对所有的输入符号a,状态s和t的a转换都是的同一子集中的状态。形成的所有子集成为new的状态子集。下面以图1所示的DFAM,利用上述算法将其最小化:首先将M的状态分成3个子集:一个由终态(可接受态)组成,一个由非终态组成,一个出错状态组成,即初始划分P0为:P0=(1,2,3,4,5,6,7,),显然一个子集中的任何状态与另外两子集中的任何状态不等价。现在观察第一个子集1,2,3,4,5,在读入输入符号a后,状态1、2和5分别转换为第一个子集中所含的状态3和4,而3和4分别转换为第三个子集中所含的状态e,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VB423 分类 管理 插件 设计 教学内容
限制150内