首页 江苏省计算机等级考试二级VB考试重点难点分析讲解

江苏省计算机等级考试二级VB考试重点难点分析讲解

举报
开通vip

江苏省计算机等级考试二级VB考试重点难点分析讲解 第1章 应试指南(略) 第2章 数据结构与算法(公共基础部分) 第3章 程序设计基础(公共基础部分) 第4章 软件工程基础(公共基础部分) 第5章 数据库设计基础(公共基础部分) 第6章 VB程序设计的初步知识 第7章 数据输入输出 7.1.2与Print方法有关的函数    7.1.4 Cls方法与Move方法 7.1.5 MsgBox函数 第8章 Visual Basic控制结构 8.1.1 IIf函数 第9章 数组与过程 9.1.2 默认数组 第10章 键盘与鼠标事件...

江苏省计算机等级考试二级VB考试重点难点分析讲解
第1章 应试指南(略) 第2章 数据结构与算法(公共基础部分) 第3章 程序设计基础(公共基础部分) 第4章 软件工程基础(公共基础部分) 第5章 数据库设计基础(公共基础部分) 第6章 VB程序设计的初步知识 第7章 数据输入输出 7.1.2与Print方法有关的函数    7.1.4 Cls方法与Move方法 7.1.5 MsgBox函数 第8章 Visual Basic控制结构 8.1.1 IIf函数 第9章 数组与过程 9.1.2 默认数组 第10章 键盘与鼠标事件 10.1.1 KeyDown和KeyUp事件 第11章 可视化程序设计 11.1.2 弹出式菜单 第12章 数据文件 第13章 笔试模拟试卷及解析(略) 第14章 机试指导、分类解析及模拟(略) 第2章 数据结构与算法 本章节主要考查算法的基本概念、基本的数据结构及其基本操作、查找和排序算法。本章的内容在历次试题中所占的比例约为11.2%,都是以选择题和填空题的形式出现的。         2.1.1  考点1:算法的定义     算法是对一个问题求解步骤的一种描述,是求解问题的方法,它是指令的有限序列,其中每条指令表示一个或者多个操作。一般来说,一个算法具有以下5个主要的特征。     (1)有穷性:一个算法(对任何合法的输入)在执行有穷步后能够结束,并且在有限的时间内完成。     (2)确定性:算法中的每一步都有确切的含义。     (3)可行性:算法中的操作能够用已经实现的基本运算执行有限次来实现。     (4)输入:一个算法有零个或者多个输入,零个输入就是算法本身缺定了初始条件。     (5)输出:一个算法有一个或者多个输出,以反映出数据加工的结果。         例2.1.1  问题处理 方案 气瓶 现场处置方案 .pdf气瓶 现场处置方案 .doc见习基地管理方案.doc关于群访事件的化解方案建筑工地扬尘治理专项方案下载 的正确而完整的描述称为______。[2005年4月 填空第5题]     答案:算法     例2.1.2  一个算法应该具有“确定性”等5个特性,下面对另外4个特性的描述中错误的是(   )。     A.有零个或多个输入      B.有零个或多个输出     C.有穷性        D.可行性     答案:B     例2.1.3  算法具有5个特性,以下选项中不属于算法特性的是(   )。     A.有穷性   B.简洁性   C.可行性   D.确定性     答案:B 第3章 程序设计基础 本章主要考查程序设计的一些基本知识,比如程序设计的方法与风格、结构化程序设计与面向对象程序设计的基本思想。从历次的试题来看,本章试题分值约占2.4%,属于非重点考查对象。尽管分值所占的比例较少,但基本上每次至少有一道试题。试题以选择和填空的形式出现。 3.1  程序设计   该节 知识点 高中化学知识点免费下载体育概论知识点下载名人传知识点免费下载线性代数知识点汇总下载高中化学知识点免费下载 所占试题比重为17%,属于非重点考查对象。到目前为止,该知识点只出过一道选择题。从考试大纲来看,主要考查程序设计的方法、程序设计风格。   3.1.1  考点1:程序设计的方法 程序是指令的有序集合,它是为了解决某一问题而设计的一系列指令。程序设计是使用计算机系统的指令或语句,组成求解不同问题,实现不同算法所需的完整序列的一个工作过程。随着计算机硬件技术的发展以及计算机技术的广泛应用,根据需求程序设计的方法也经过了几个发展的过程。   在程序设计早期,由于受到计算机硬件的限制,运行速度慢,存储空间少,使得程序员不得不提高程序的效率,在这种情况下,编程成了一种技巧和艺术,程序的可理解性和可扩充性没有得到重视。在这个时期出现的高级语言有Fortran、COBOL、ALGOL、Basic等语言,在这个时期不注重程序的结构,可以说这是没有固定程序设计方法的时期。   计算机硬件得到了很大的发展,在编程的时候,运行速度和存储空间不再困扰程序员,计算机技术应用范围的扩大使得程序必须要有良好的结构,在这种需求下,提出了结构化程序设计方法。这时出现的高级语言有PASCAL、C等。20世纪60年代后期,提出了类和对象的概念,程序设计已经不是问题的中心,如何更好地描述问题已经成为了主题,因此在这种情况下,面向对象的程序设计方法发展起来了,并得到广泛地应用。进入20世纪80年代后,出现了一系列的面向对象程序设计语言,如C++等。   下面我们会详细讨论结构化程序设计和面向对象程序设计。   3.1.2  考点2:程序设计的风格   我们在编写程序时要养成良好的程序设计习惯,对程序的要求不仅能够在计算机上正确运行,而且要便于阅读和被别人理解,便于程序的调试和维护。好的程序设计风格有助于提高程序的正确性、可读性、可维护性和可用性。要使程序具有良好的风格,概括起来可以分成4部分:源程序文档化、数据说明、语句结构、输入/输出方法。 1.源程序文档化   源程序文档化主要包括:标识符的命名、程序中添加注释以及程序的编辑风格。   (1)标识符的命名   标识符即符号名,包括变量名、模块名、常量名、标号名、函数名、数据区名和缓冲区名等。一个程序中必然有很多的标识符,特别是在一个复杂大型的程序中,标识符可能成千上万,对标识符作用的正确理解是读懂程序的前提,如果程序员随意命名标识符,程序的可读性会很差。   因此,标识符的命名应该要规范化,具体要根据下面几个原则来命名。   ① 选取有实际意义的标识符名称。为了方便理解标识符的作用,标识符的名字要能够反映其作用,如用于存储数量的变量的名称可以是count等。   ② 为了便于程序的输入,标识符的名字不宜太长。必要时可以用一些缩写,但是要注意缩写规则要一致,并且要给每一个变量加上注释。   ③ 为了便于区分,不同的标识符不要取过于相似的名字。   ④ 由于程序中通常需要大量不同类型的标识符,为了使说明部分阅读起来更加清晰,在对其进行类型说明时应注意以下几点:按照某种顺序对各种类型的变量进行集中说明,如先说简单类型,再说明记录类型;在使用一个说明语句对同一类型的多个变量进行说明时,按照变量名中的字母顺序进行排列。   (2)程序中加注释   注释是程序员与日后的程序读者之间通信的重要工具,用自然语言或伪码描述。它说明了程序的功能,特别在维护阶段,对理解程序提供了明确指导。一些正规的程序文本中,注释行的数量占到整个源程序的1/3~1/2,甚至更多。注释分序言性注释和功能性注释。   ① 序言性注释:一般置于每个程序模块的开头部分,它应当给出程序的整体说明,用来引导读者理解程序。主要描述内容可以包括:程序标题、程序功能说明、主要算法、接口说明、有关数据描述、程序位置、开发简历、程序设计者、复审者、复审日期和修改日期等。   ② 功能性注释:一般置于程序体中,用来描述其后的语句或程序段是用来做什么的,或者是执行了其下面的语句或程序段会产生什么样的效果,而不要解释下面该怎么做。   (3)程序的编辑风格   为了使程序的结构一目了然,可以在程序中利用空格、空行、缩进等技巧使程序层次清晰,便于程序的理解。可以按照以下几个原则来编辑程序。   ① 恰当地利用括号,可以突出运算的优先性,避免发生运算错误。   ② 程序段之间可用空行隔开。   ③ 对于选择语句和循环语句,应该做适当的缩进,使得程序的逻辑结构更加清晰。   2.数据说明   在程序设计时,应该注意数据说明的风格。为了使数据定义更易于理解和维护,有以下指导原则。   (1)数据说明顺序应规范化,使数据的属性更易于查找,从而有利于测试、纠错与维护。原则上,数据说明的次序与语法无关,其次序是任意的,但是便于阅读和理解,最好使其规范化,使说明次序按照某种规则固定。例如,按以下顺序:常量说明、类型说明、全程量说明及局部量说明。   (2)语句中变量的说明应有序化,多个变量在同一个说明语句中说明时,各变量名按字典序排列。   (3)使用注释来说明复杂的数据结构时,要说明在程序实现这个数据结构时的特点。   3.语句结构   单个语句结构是编码阶段的任务,语句结构追求简单直接,不能为了追求效率而使代码复杂化。我们可以根据下面的原则来构造语句。   ① 为了便于阅读和理解,不要一行多个语句。 ② 不同层次的语句采用缩进形式,使程序的逻辑结构和功能特征更加清晰。   ③ 要避免复杂的判定条件,避免多重的循环嵌套。   ④ 表达式中使用括号以提高运算次序的清晰度。   ⑤ 程序编写首先应当考虑程序结构的清晰性,不要刻意追求技巧性,使得程序复杂。   ⑥ 除非对效率有特殊要求,否则先要考虑程序的清晰性,不要追求高效率而丧失程序的清晰度。   ⑦ 程序编写要简单,要直截了当地表达出程序员的用意。   ⑧ 首先要保证程序正确,然后才要求提高速度。   ⑨ 避免使用临时变量而使程序可读性下降。   ⑩ 尽可能使用库函数。   4.输入和输出   输入和输出是程序的一个重要的组成部分,是用户和计算机交互直接相关的。输入和输出的方式应当尽量方便用户的使用。一定要避免输入输出的不当而导致用户使用软件麻烦。因此,在软件需求分析阶段和设计阶段,就应基本确定输入和输出的风格。软件能否被用户接受,有时就取决于输入和输出的风格。   一个良好的输入输出风格能够使用户很方便地使用系统,我们在编码阶段可以根据下面的原则来设计一个好的输入输出。   ① 对所有输入的数据都要进行有效性检查,要能够识别出错误的输入,对错误的输入做出异常处理,使得每个输入数据都具有有效性。   ② 检查输入数据项的各种重要组合的合理性,必要时报告输入状态信息。   ③ 在输入时,输入的步骤和方式应该尽量简单。   ④ 输入数据时,应允许使用自由格式输入。   ⑤ 允许默认值   ⑥ 输入一批数据时,最好使用输入结束标志,而不要用户指定输入数据数目。   ⑦ 在交互输入时,要给用户提示信息,如可使用选择项的种类和取值范围,在输入结束时,给出状态信息。   ⑧ 当程序设计语言对输入/输出格式有严格要求时,应保持输入格式与输入语句的要求的一致性。   ⑨ 给所有的输出加注解,并设计输出报表格式。   例3.1.1  以下叙述中错误的是(   )。[2005年9月 选择第11题]   A.用户所定义的标识符允许使用关键字   B.用户所定义的标识符应尽量做到“见名知意”   C.用户所定义的标识符必须以字母或下划线开头   D.用户定义的标识符中,大、小写字母代表不同标识   答案:A 第4章 软件工程基础 本章主要掌握以下几个方面内容。     (1)软件工程的基本概念、软件生命周期概念、软件工具和软件开发环境;     (2)结构化分析方法、数据流图、数据字典和软件需求规格说明书;     (3)结构化设计方法、总体设计和详细设计     (4)软件测试的方法、白盒测试与黑盒测试、测试用例设计、软件测试的实施、 单元 初级会计实务单元训练题天津单元检测卷六年级下册数学单元教学设计框架单元教学设计的基本步骤主题单元教学设计 测试、集成测试和系统测试;     (5)程序调试、静态调试与动态调试;     (6)软件维护。     通过对历次试卷内容的分析,软件工程考核内容占卷面分数6.8%。  4.1  软件工程的基本概念     软件工程的基本概念所涉及的试题分值在本章中所占比重为16%     4.1.1  考点1:软件与软件工程概述     1.软件的定义     软件是程序、数据与相关文档的集合,相对于计算机硬件而言,软件是逻辑产品而不是物理产品,是计算机的无形部分。     软件包括系统软件和应用软件。系统软件是计算机管理自身资源,提高计算机使用效率而编写的软件。系统软件依赖于机器的指令系统、中断系统,以及运算、控制、存储部件和外部设备。系统软件包括操作系统(如Windows、UNIX、Linux、Macintosh等)、各种语言编译的编译程序、数据库管理系统、文件编辑系统、系统检查与诊断软件等。应用软件是专门为了某种使用目的而编写的程序系统,常用的有文字处理软件(如WPS和Word)、专用的财务软件、人事管理软件、计算机辅助软件(如AutoCAD)和绘图软件(如3DS)等。     与硬件相比,软件的特点包括:     (1)软件是一种逻辑实体;     (2)软件的生产与硬件不同,它没有明显的制作过程;     (3)软件在运行、使用期间不存在磨损、老化问题;     (4)软件的开发、运行对计算机系统具有依赖性,受计算机系统的限制,这导致了软件存在移植的问题;     (5)软件复杂性高,成本昂贵;     (6)软件开发涉及诸多的社会因素。     2.软件工程的定义     随着计算机的应用范围日益广泛,传统的软件开发成本难以控制,进度不可预计;软件系统的质量和可靠性很差;软件文档相当缺乏,软件系统不可维护;软件开发生产率很低,软件产品供不应求;软件产品成本十分昂贵等特点日益显现,成为计算机应用的一个“瓶颈”,出现了所谓的“软件危机”。1968年,北大西洋公约组织(NATO)召开计算机科学会议,首次提出了软件工程的概念,试图用工程化的方法开发软件,从而解决或缓解软件危机。     软件工程是采用工程化的方法开发和维护软件的工程学科。把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术和方法结合起来,以便经济地开发出高质量的软件并有效地维护它。软件工程包括3个要素,分别是方法、工具和过程。     软件工程的基本思想是在软件开发过程中需要应用工程化原则进行软件开发,并将这个思想贯穿到软件开发的整个过程中。     软件工程的目标是在给定成本、进度的前提下,利用工程化原则,开发出具有可修改性、有效性、可靠性、可理解性、可维护性、可重用性、可适用性、可移植性、可追踪性和可互操作性并满足用户需求的软件产品。 3.例题        例4.1.1  下列描述中正确的是(   )。[2005年4月 选择第8题]     A.程序就是软件       B.软件开发不受计算机系统的限制     C.软件既是逻辑实体,又是物理实体  D.是程序、数据与相关文档的集合     答案:D        例4.1.2  下列描述中正确的是(   )。[2005年9月 选择第5题]     A.软件工程只是解决软件项目的管理问题     B.软件工程主要解决软件产品的生产率问题     C.软件工程的主要思想是强调在软件开发过程中需要应用工程化原则     D.软件工程只是解决软件开发中的技术问题     答案:C 第5章 数据库设计基础 本章主要掌握以下几个方面内容。     (1)数据库的基本概念、数据库、数据库管理系统和数据库系统;     (2)数据模型、实体联系模型、E-R图和从E-R图导出关系数据模型;     (3)关系代数运算(包括集合运算及选择、投影、连接运算)和数据库规范化理论;     (4)数据库设计方法和步骤、需求分析、概念设计、逻辑设计和物理设计的相关策略。     通过对历次试卷内容的分析,本章考核内容占卷面分数8.8%。     5.1  数据库基础知识     信息在现代社会中起着越来越重要的作用,信息资源的开发和利用水平已成为衡量一个国家综合国力的重要标志。在计算机应用领域中,数据处理是其主要方面。数据库技术就是作为数据处理中的一门技术而发展起来的。本节介绍数据库系统的基本概念和发展历史,初步了解数据库系统的概貌。 数据库基础知识所涉及的试题分值在本章中所占比重为41%,     5.1.1  考点1:数据库     数据库(Database,DB)可以看成是长期存储在计算机内的、大量的、有结构的和可共享的数据集合。数据是描述现实世界中各种具体事物和抽象概念的可存储并有明确意义的信息。     数据库可以被直观地理解为存放数据的仓库,只不过这个仓库是在计算机的大容量存储器上,例如,硬盘就是一种最常见的计算机大容量存储设备。数据必须按一定的格式存放,因为它不仅需要存放,而且还要便于查找。     数据库的特点如下     (1)数据按一定的数据模型组织、描述和储存。     (2)冗余度较小。数据共享大大减少了数据冗余。     (3)数据独立性较高。数据独立性是数据库领域中一个常用的术语,也是数据库技术的重要特点之一。数据独立性是指数据的组织结构和存储方法与应用程序互不依赖、彼此独立。它包括数据的物理独立性和数据的逻辑独立性。物理独立性是指用户的应用程序与存储在磁盘上的数据库中的数据是相互独立的,也就是当数据的物理存储改变了,用户程序也可以不变。逻辑独立性是指用户的应用程序与数据库的逻辑结构是相互独立的,也就是说,数据的逻辑结构改变了,用户程序也可以不变。     (4)易扩展。     (5)可为各种用户共享。不同的用户可以使用同一个数据库,可以取出他们所需要的子集,而且容许子集任意重叠。 例5.1.1  数据独立性是数据库技术的重要特点之一。所谓数据独立性,是指(   )。[2005年4月 选择第9题]     A.数据与程序独立存放     B.不同的数据被存放在不同的文件中     C.不同的数据只能被对应的应用程序所使用     D.以上三种说法都不对     答案:D        例5.1.2  数据库设计的根本目标是要解决(   )。[2005年9月 选择第8题]     A.数据共享问题       B.数据安全问题     C.大量数据存储问题      D.简化数据维护     答案:A        例5.1.3  下列叙述中正确的是(   )。[2004年9月 选择第9题]     A.数据库系统是一个独立的系统,不需要操作系统的支持     B.数据库设计是指设计数据库管理系统     C.数据库技术的根本目标是要解决数据共享的问题     D.数据库系统中,数据的物理结构必须与逻辑结构一致     答案:C 第6章 Visual Basic程序设计的初步知识     本章主要考查关于Visual Basic概述、Visual Basic程序开发环境、Visual Basic常用对象及其操作、Visual Basic应用程序基本操作、Visual Basic常用数据类型、Visual Basic中的常量和变量、Visual Basic常用内部函数、Visual Basic字符串处理、Visual Basic运算符与表达式和Visual Basic常用 标准 excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载 控件等内容。通过对历年试卷内容的分析,本章考核内容约占卷面分数30%,属于重点考查对象。由命题走势图可知,本章内容所涉及考题分值有下降趋势,但是考生绝不能掉以轻心,因为本章内容是整个Visual Basic语言的基础,并且在试题中本章所占比例较大,近年来考题分值一直保持在25分左右,因此考生应重点复习。     6.1  Visual Basic概述     考点1:Visual Basic的特点和版本     1.Visual Basic的特点     Visual Basic是在Basic语言基础上研制而成的,它具有Basic语言简单而不贫乏的优点,同时增加了结构化和可视化程序设计语言的功能。     Visual Basic是一种可视化的、面向对象和采用事件驱动方式的结构化高级程序设计语言,可用于开发Windows环境下的各类应用程序。     总起来说,Visual Basic有以下主要特点:     (1)可视化编程;     (2)面向对象的程序设计;     (3)结构化的程序设计语言;     (4)事件驱动编程 机制 综治信访维稳工作机制反恐怖工作机制企业员工晋升机制公司员工晋升机制员工晋升机制图 ;     (5)访问数据库。     与传统的编程语言相比,Visual Basic最突出的特点是可视化编程。     2.Visual Basic的版本     Visual Basic 6.0包括3种版本,分别为学习版、专业版和企业版。     (1)学习版     Visual Basic的基础版本,可用来开发Windows应用程序。该版本包括所有的内部控件(标准控件)、网格(Grid)控件、Tab对象以及数据绑定控件。     (2)专业版     该版本为专业编程人员提供了一整套用于软件开发、功能完备的工具。它包括学习版的全部功能,同时包括ActiveX控件、Internet控件、Crystal Report Writer和报表控件。     (3)企业版     可供专业编程人员开发功能强大的组内分布式应用程序。该版本包括专业版的全部功能,同时具有自动化管理器、部件管理器、数据库管理工具、Microsoft Visual SourceSafe面向工程版的控制系统等。     在这3种版本中,企业版最全;而专业版包括了学习版的功能,用户可根据自己的需要选择不同的版本。        例6.1.1  以下关于Visual Basic特点的叙述中,错误的是(   )。[2006年4月 选择第11题]     A.Visual Basic是采用事件驱动编程机制的语言     B.Visual Basic程序既可以编译运行,也可以解释运行     C.构成Visual Basic程序的多个过程没有固定的执行顺序     D.Visual Basic程序不是结构化程序,不具备结构化程序的三种基本结构     答案:D 第7章  数据输入输出     本章主要考查数据输入输出方法,包括数据输出方法、数据输入方法、字形设置与打印输出等内容,本章内容通常与其他章节知识点结合起来考。通过对历年试卷内容的分析,本章考核内容约占4%,属于非重点考查对象     7.1  数据输出方法     7.1.1  考点1:print方法     Print方法可以在窗体上显示文本字符串和表达式的值,并可在其他图形对象或打印机上输出信息。     Print方法的一般格式如下:     [对象名称.]Print[表达式][,|;]     说明:     “表达式”是一个或多个表达式,可以是数值表达式或字符串。     当输出多个表达式或字符串时,各表达式用分隔符(逗号、分号或空格)隔开。如果输出的各表达式之间用逗号分隔,则按标准输出格式(分区输出格式)显示数据项。在这种情况下,以14个字符位置为单位把一个输出行分为若干个区段,逗号后面的表达式在下一个区段输出。如果各输出项之间用分号或空格作为分隔符,则按紧凑输出格式输出数据。     Print方法具有计算和输出双重功能.对于表达式,它先计算后输出。    在一般情况下,每执行一次Print方法后会自动换行。为了仍在同一行上显示,可以在末尾加上一个分号或逗号。     例7.1.1  以下语句的输出结果是         [2005年4月 填空第6题]     Print Int(12345.6789*100+0.5)/100     解析:12345.6789*100+0.5=1234568.39,Int(12345.6789*100+0.5)=1234568,最后结果为12345.68。     答案:12345.68 7.1.2  考点2:与Print方法有关的函数     在Print方法中经常使用Tab函数、Spc函数和Space函数,使信息按指定的格式输出。     1.Tab(n)函数 Tab(n):用于把光标往后移动n个字符的位置,从这个位置开始输出信息。要输出的内容放在Tab函数的后面,并用分号隔开。 例如:     Print Tab(25);800     说明:     ①参数n为数值表达式,其值为一个整数,它是下一个输出位置的列号,表示在输出前把光标移到该列。最左边的列号为1,如果当前的显示位置已经超过n,则自动下移一行。     ②在Visual Basic中,对参数n的取值范围没有具体限制。当n比行宽大时,显示位置为n Mod行宽;如果n<1,则把输出位置移到第一列。     ③ 当在一个Print方法中有多个Tab函数时,每个Tab函数对应一个输出项,各输出项之间用分号隔开。     2.Spc(n)函数 Spc(n)函数与Tab函数类似,用于跳过n个空格输出。与Tab函数的区别是,Tab函数从第—列开始计数,n是绝对偏移量。而spc函数则是从前面的输出项后开始计数,n是相对偏移量。 例如:     Print “CHINA”;Spc(8);”CSAI”     该语句首先输出“CHINA”,然后经过8个空格,显示“CSAI”。     说明:      参数n是一个数值表达式,其取值范围为0~32767的整数。Spc函数与输出项之间用分号隔开。       Spc函数与Tab函数的作用类似,而且可以互相代替。     3.Space$ (n)     Space$ (n):用于返回n个空格。        例7.1.2  Tab函数用于把光标往后移动到自己需要的位置,它与输出的内容要用      符号隔开。     答案:分号(;)     7.1.3  考点3:格式输出(Format $)          Format $用于把数值和日期型的数据按指定的格式输出。Format $的一般格式如下:     Format$(数值表达式,格式字符串)     说明:如果省略格式字符串,则把数值表达式的值转换成字符串。在这种情况下Format$函数的功能与Str$函数基本相同,惟一的差别是当把正数转换成字符串时,Str$函数在字符串前面留有一个空格,而Format$函数则不留空格。其作用见下表。     格式字符串及其作用 字符 作用 "#" 表示数字,不在数值字符串的前面或后面补0 "0" 表示数字,宽度不足时,在数值字符串的前面或后面补0 "." 指定小数点的位置 "," 指定千位分隔符的位置(不能放在头部或尾部) "%" 指定百分比符号的位置 "$" 指定美元符号的位置 "-/+" 指定正号和负号的位置 "E+/E-" 指定数字符号的位置     例如:使用以下事件过程测试数值的格式化输出。     Private Sub Form_Click()     Print Format$(25634, "########")     Print Format$(25634, "00000000")     Print Format$(256.34, "0000.00")     Print Format$(256.34, "####.##")     Print Format$(12345.67, "####,#.##")     Print Format$(12345.67, "#,####.##")     Print Format$(12345.6, "###,##0.00")     Print Format$(12345.6, "$###,#0.00")     Print Format$(12345.6, "-###,##0.00")     Print Format$(0.123, "0.00%")     Print Format$(12345.6, "0.00E+00")     Print Format$(0.1234567, "0.00E-00")     Print Format$(12345.67, ",#####.##")    '错误     Print Format$(12345.67, "#####,.##")    '错误     End Sub     上述过程运行后,单击窗体,输出结果如图7-2所示。       7.1.4  考点4:Cls方法与Move方法     1.Cls方法 Cls方法用于清除通过画图方法画出的图形或者用Print语句打印的信息,并把光标移到对象的左上角(0,0)。这里的对象可以是窗体或图片框,如果省略“对象”则清除当前窗体内的显示内容。 Cls方法的一般格式为:     对象名.Cls     例如:     Picture1.Cls '清除图片框Picture1内的图形或文本     Cls    '清除当前窗体内显示的内容     说明:     如果AutoRedraw=False,则Cls方法不能清除在AutoRedraw为True时所产生的图形和打印的信息。     清除后,当前座标回到对象的左上角。     当窗体的背景是用Picture属性装入的图形时,不能用Cls方法清除,只能通过LoadPicture方法清除。     2.Move方法     Move方法用来移动窗体和控件,并可改变其大小。Move方法的一般格式如下:     [对象.]Move左边距离[,上边距离][,宽度[,高度]]]     例如:在窗体上画一个文本框和一个图片框,在窗体的单击事件中编写如下代码,改变窗体、文本框和图片框的大小和位置。程序运行后,窗体的单击事件触发前后的结果分别如图7-3和图7-4所示。     Private Sub Form_Click()     Move 800, 800, 4000, 2600     Text1.Move 200, 200, 1500, 1000     Picture1.Move 1800, 200, 1500, 1000     Picture1.Print "Picture1"     End Sub     说明:       Move方法中的“对象”可以是窗体以及除计时器(Timer)、菜单(Menu)之外的所有控件,如果省略“对象”,则表示要移动的是窗体。 “左边距离”、“上边距离”、“宽度”及“高度”均以twip(缇)为单位。     如果“对象”是窗体,则“左边距离”和“上边距离”均以屏幕左边界和上边界为准;     如果“对象”是控件,则以窗体的左边界和上边界为准。     3.TextHeight和TextWidth方法     这两个方法用来辅助设置坐标。其中TextHeight方法返回一个文本字符串的高度值,而TextWidth方法则返回一个文本字符串的宽度值,单位均为twip(缇)。     属性ScaleHeight和ScaleWidth分别用来表示对象的高度和宽度值,它们与方法TextHeght和TextWidth结合使用,可以使字符串居中显示。     属性Height和Width可用来返回或设置窗体、控件、打印机及屏幕的高度和宽度,而Left和Top属性分别用来返回或设置窗体、控件与其左边和顶边的距离,它们的单位均为Twip(缇)。     例如:编写程序,使字符串居中。     Private Sub Form_Click()     FontSize = 16     Sample$ = "China Csai 中国系统分析员"     Print "字符宽/高:", TextWidth(Sample$); TextHeight(Sample$)     x = (ScaleWidth - TextWidth(Sample$)) / 2     y = (ScaleHeight - TextHeight(Sample$)) / 2     CurrentX = x     CurrentY = y     Print Sample$     End Sub     程序运行后,单击窗体,结果如图7-5所示。             例7.1.4  把控件移到相应的位置,并能改变其大小的方法是(   )。     A.Cls    B.Move    C.format   D.Tab     答案:B 7.1.5  考点5:MsgBox函数   MsgBox函数的一般格式如下:   MsgBox(msg[,type][,title][,helpfile,context])   功能:MsgBox函数用于在用户操作时,显示一个提示性的对话框,以提示用户进行后面操作的选择。 MsgBox函数的参数及其作用见下表。  MsgBox函数的返回值见下表 。     例如:编写程序,用MsgBox函数判断是否继续执行。 Private Sub Form_Click()     msg$ = "请确认数据是否正确"     Title$ = "数据检查"     x = MsgBox(msg$, 19, Title$)     If x = 6 Then         Print x * x     ElseIf x = 7 Then         Print "请重新输入"     End If End Sub   程序运行后,单击窗体,弹出如图7-6所示的对话框。如果选择“是”按钮,则返回值为6,在窗体上打印出36;如果选择“否”按钮,则返回值为7,在窗体上打印出“请重新输入”。        例7.1.5  假定有如下的命令按钮(名称为Command1)事件过程:   Private Sub Command1_Click()    x=InputBox(“输入:”, ,”输入整数”)    MsgBox”输入的数据是:”,,”输入数据:”+x   End Sub   程序运行后,单击命令按钮,如果从键盘上输入数10,则以下叙述中错误的是(   )。[2006年4月 选择第19题]   A.x的值是数值10   B.输入对话框的标题是“输入整数”   C.信息框的标题是“输入数据:10”   D.信息框中显示的是“输入的数据是:”   答案:A   7.1.6  考点6:MsgBox语句   MsgBox函数也可以写成语句形式,即:   MsgBox Msg$[,type%][,title$][,helpfile,context]   各参数的含义及作用与MsgBox函数相同,由于MsgBox语句没有返回值,因而常用于较简单的信息显示。    例7.1.6  MsgBox函数的返回类型是(   )。   A.字符型   B.数值型   C.日期型   D.没有返回值   答案:B   重点提示:考生在考试中应当注意MsgBox函数返回值与MsgBox语句的返回值不同,MsgBox函数返回值为数值,而MsgBox语句则没有返回值。 第8章 Visual Basic控制结构     本章主要考查Visual Basic程序设计常用的控制结构,包括分支控制结构、循环控制结构和GoTo型控制结构。通过对历年试卷内容的分析,本章考核内容约占10%,属于一般考查对象。本章内容下次考试将有上升趋势。     8.1  分支控制结构     8.1.1  考点1:单行结构条件语句     单行条件语句的格式如下:     If 条件 Then then 部分 [Else else 部分]     其功能为:如果“条件”为True,则执行“then部分”,否则执行“else部分”。其中的“else部分”是可选的,当其省略时,If语句简化为:     If 条件 Then then 部分     其功能为:如果“条件”为True,则执行“then部分”,否则执行下一行程序。     条件语句中的“then部分”和“else部分”都可以嵌套,其深度(嵌套层数)没有具体规定,但受到每行字符数(1024)的限制。当嵌套层数较多时,应注意嵌套的正确性,一般原则是:每一个“Else”部分都与它前面未曾被配对的“If-Then”配对。     例8.1.1  当x=-5时,执行下述代码后,x的值为(   )。     If x >= 0 Then If x > 0 Then y = 1 Else y = 0 Else y = -1     A.1     B.0     C.-1    D.以上都不正确     答案:C     8.1.2  考点2:块结构条件语句     块结构条件语句与C、Ada等语言中的条件语句类似,一般格式如下:     If 条件1 Then     语句块1     [ElseIf 条件2 Then     语句块2]     [ElseIf 条件3 Then     语句块3]     ……     [Else     语句块n]     End If     其功能为:如果“条件1”为True,则执行“语句块1”;如果“条件2”为True,则执行“语句块2”……则执行“语句块n”。     该语句中的“语句块”可以是一个语句,也可以是多个语句。当是多个语句时,可以分别写在多行里;如果写在一行中,则各语句之间用冒号隔开。     说明:      该语句中的“条件1”、“条件2”等都是逻辑表达式,通常数值表达式和关系表达式都是逻辑表达式的特例。     “语句块”中的语句不能与前面的Then在同一行,否则Visual Basic认为是一个单行结构的条件语句。      在块结构的条件语句中,ElseIf子句的数量没有限制,可以根据需要加入任意多个ElseIf子句。      块结构条件语句中的ElseIf子句和Else子句都是可选的。      当If结构体内有多个条件为True时,Visual Basic执行第一个为True的条件后面的语句块。      块形式的条件语句可以嵌套,嵌套时必须完全“包住”,不能互相“骑跨”。     例8.1.2  函数A()、B()、C()分别实现三种不同的功能,令X=1、Y=-4、Z=0,那么下述代码的功能是(   )。     If (X>0)Then     A()     ElseIf (Y<10)Then     B()     ElseIf (Z<3)Then     C()     End If     A.执行函数A()  B.执行函数B()  C.执行函数C() D.以上都不正确     答案:A 8.1.3  考点3:IIf函数     IIf函数可以用来执行简单的条件判断操作,它是“If…Then…Else”结构的简写版本,是“Immediate If”的缩略。其格式如下:     result=IIf(条件,True 部分,False 部分)     其中,“result”是函数的返回值,“条件”是一个逻辑表达式。当“条件”为真时,IIf函数返回“True部分”,否则返回“False部分”。“True部分”或“False部分”可以是表达式、变量或其他函数。该函数与C语言中“?:”运算符的功能相似,可以使程序大为简化。        例8.1.3  设a=“a”,b=“b”,c=“c”,d=“d”,执行语句x=IIf((ad),“A”,“B”)后,x的值为(   )。[2005年4月 选择第15题]     A.“a”     B.“b”     C.“B”     D.“A”     答案:D     重要提醒:使用IIf函数时,其中的三个参数都不可以省略,而且要求“True 部分”、“False 部分”及结果变量的类型一致。此外,由于IIf要计算“True部分”和“False部分”,因此有可能会产生副作用。     8.1.4  考点4:多分支控制结构     多分支控制结构由情况语句(Select语句或Case语句)构成,它可以根据一个表达式的值,在一组相互独立的可选语句序列中挑选要执行的语句序列。情况语句是块形式条件语句的一种变形,其格式如下:     Select Case 测试表达式     Case 表达式表列1       [语句块2]]     [Case 表达式表列2        [语句块2]]     ……     [Case Else        [语句块n]]     End Select     其功能是,根据“测试表达式”的值,从多个语句块中选择符合条件的一个语句块执行。其中,“测试表达式”可以是数值表达式或字符串表达式,通常称为变量或常量;“语句块1、语句块2……语句块n”由一行或多行合法的Visual Basic语句组成。“表达式表列1、表达式表列2……表达式表列n”称为域值,可以采用下述三种形式:表达式[,表达式]、表达式To表达式、Is关系运算表达式。     对于这种控制结构,需要掌握以下几点:       Select Case语句与If…Then…Else语句块的功能类似,二者可以互换使用。     和C语言不同,如果同一个域值的范围在多个Case子句中出现,则只执行符合要求的第一个Case子句的语句块。     Case Else子句必须放在所有的Case子句之后,如果Select Case结构中任何一个Case子句都没有与测试表达式相匹配的值,而且也没有Case Else子句,则不执行任何操作。     在不同的Case子句中指定的条件和相应的操作不能相互矛盾。        例8.1.4  在窗体上画1个命令按钮(名称为Command1)和1个文本框(名称为Text1),然后编写如下事件过程:     Private Sub Command1_Click()      x=Val(Text1.Text)      Select Case x       Case1,3        y=x*x       Case Is>=10,Is<=-10        y=x       Case-10 To 10        y=-x      End Select     End Sub     程序运行后,在文本框中输入3,然后单击命令按钮,则以下叙述中正确的是(   )。[2006年4月 选择第20题]     A.执行y=x*x  B.执行y=-x   C.先执行y=x*x,再执行y=-x  D.程序出错     答案:A     重要提示:“表达式表列”中的三种形式,在使用时需要注意以下几点:     关键字To用来指定一个范围,此时,必须把较小的值写在前面,较大的值写在后面,字符串常量的范围必须按字母的顺序写出。     如果使用关键字Is,则只能用关系运算符,并且条件只能是简单条件,不能用逻辑运算符将两个或多个简单条件组合在一起。     在一个Select Case语句中,三种形式可以混用。 第9章 数组与过程     本章主要考查Visual Basic中的数组与过程,主要包括:数组基本概念、数组基本操作、控件数组、Sub过程、Function过程、过程中的参数、局部内存分配和Shell函数。通过对历年试卷内容的解析,本章考核内容约占18%,属于重点考查对象,但将保持下降趋势。 9.1  数组基本概念     9.1.1  考点1:数组的定义     数组是有序的数据的集合。在Visual Basic中,一个数组中的元素可以是相同类型的数据,也可以是不同类型的数据。在Visual Basic中,可以有两种格式定义数组:     1.第一种格式 (1)一维数组     一维数组的定义一般格式如下:     Dim 数组名(下标上界)  As 类型名称     例如:Dim score (10) As Integer     该语句定义了一个一维数组,名字为score,类型为Integer,共6个元素。     (2)二维数组     二维数组的定义一般格式如下:     Dim 数组名(第一维下标上界,第二维下标上界)  As 类型名称     例如:Dim stuScore (10,2) As Integer     该语句定义了一个二维数组,名字为stuScore,类型为Integer,共11X3=33个元素。     2.第二种格式     (1)定义数组     在定义数组时,指定数组下标的上界和下界。语句一般格式如下:     Dim 数组名([下界 To] 上界[,[下界 To] 上界]……)  As 类型名称     例如:Dim score(1 To 5)     该语句定义了一个一维数组,下界为1,上界为5,共5个元素。     第二种格式实际上包含了第一种格式,只要省略“下界To”,即变为第一种格式。     (2)语句说明     “数组名”与简单变量相同,可以是任何合法的Visual Basic变量名,在同一过程中,数组名不能与变量名同名;     数组必须先定义后使用,并且每一维的元素个数必须是常数,不能是变量或表达式;     使用Dim语句定义数组时,数值数组中的全部元素初始化为0,字符串数组中的全部元素初始化为空字符串;     一般情况下,下标的下界默认为0,可以使用Option Base n(n只能为或1)改变下标的默认为1;使用LBound和UBound函数可以获得数组的上、下界值;     如果下标值从0开始,则数组元素的个数为最大下标值加1,如果下标值从1开始,则数组元素的个数与最大下标值相等。     3.定义数组的保留字     在Visual Basic中,定义数组时可使用4个保留字,以定义不同范围内的数组:     Dim:定义窗体模式或标准模块数组,也可用在过程中;     ReDim:用在过程中;     Static:用在过程中;     Public:用在标准模块中,定义全局数组。       例9.1.1  在窗体上画1个命令按钮,其名称为Command1,然后编写如下事件过程:[2006年4月 填空第7-8题]     Private Sub Command1_Click()     Dim arr (1 To 100) As Integer      For I = 1 To 100       arr(i)=Int(Rnd *1000)      Next i      Max = arr(1)      Min = arr(1)      For i= 1 To 100       If 【7】 Then        Max = arr(i)       End If       If 【8】 Then        Min =arr(i)       End If      Next i      Print "Max =";Max, "Min=";Min     End Sub     程序运行后,单击命令按钮,将产生100个1000以内的随机整数,放入数组arr中,然后查找并输出这100个数中的最大值Max和最小值Min,请填空。     解析:由条件判断可以得知,在【7】处的意思是将最大值Max中的数与arr(i)中的数相比较,【8】处的意思是将最小值Min中的数与arr(i)中的数相比较。     答案:【7】Maxarr(i)  9.1.2  考点2:默认数组     所谓默认数组,就是数据类型为Variant(默认)的数组。在一般情况下,定义数组应指明其类型。     例如:     Static Elec(1 To 100)As Integer     该语句定义了一个数组Elec,该数组的类型为整型,它有100个元素,每个元素都是一个整数。但如果使用语句:     Static Elec(1 To 100)     则定义的数组是默认数组,没有指定类型,则类型默认为Variant,该语句等价于:     Static Elec(1 To 100) As Variant     对于默认数组来说,同一个数组中可以存放各种不同的数据。因此,默认数组可以说是一种“混合数组”,这也就是默认数组的意义所在。        例9.1.2  阅读下面程序并填空。     Sub Form_Click()        【1】       Defau(1)=100      Defau(2)=234.56      Defau(3)= "CSAI"      Defau(4)= "20" & Now      For i=1 To 4       Print "Defau(";I; ")="; Defau(i)      Next i     End Sub     答案:【1】Static Defau(4) 第10章    键盘与鼠标事件     本章主要考查键盘事件与鼠标事件,包括KeyPress事件、KeyDown和KeyUp事件、鼠标事件、鼠标光标的形状与拖放等知识点。通过对历年试卷内容的分析,本章考核内容约占6%,属于一般考查对象。    10.1  键盘事件     使用键盘事件过程,可以处理当按下或释放键盘上某个键时所执行的操作。     10.1.1  考点1:KeyPress事件     当压下键盘上的某个键时,将发生KeyPress事件。该事件可用于窗体、复选框、组合框、命令按钮、列表框、图片框、文本框、滚动条及与文件有关的控件。严格地说,当按下某个键时,所触发的是拥有输入焦点(Focus)的那个控件的KeyPress事件。在某一时刻,输入焦点只能位于某一个控件上,如果窗体上没有活动的或可见的控件,则输入焦点位于窗体上。当一个控件或窗体拥有输入焦点时,该控件或窗体将接收从键盘上输入的信息。例如,假定一个文本框拥有输入焦点,则从键盘上输入的任何字符都将在该文本框中回显。     在窗体上画一个控件(指前面所讲的可以发生KeyPress事件的控件),比如文本框,并双击该控件,进入程序代码窗口后,从“过程”框中选取KeyPress,即可定义KeyPress事件过程。一般格式如下:     Private Sub Text1 _ KeyPress(KeyAscii As Integer)     ……     End Sub     KeyPress事件带有一个参数,这个参数有两种形式,第一种形式是Index As Integer,只用于控件数组;第二种形式是KeyAscii As Integer,用于单个控件。上面列出的是第二种形式。KeyPress事件用来识别按键的ASCII码。参数KeyAscii是一个预定义的变量,执行KeyPress事件过程时,KeyAscii是所按键的ASCII码。     说明:     利用KeyPress事件可以对输入的值进行限制;     利用KeyPress事件可以捕捉击键动作;     在KeyPress过程中可以修改KeyAscii变量的值。如果进行了修改,Visual Basic控件中输入修改后的字符,而不是用户输入的字符。        例10.1.1  以下关于KeyPress事件过程参数KeyAscii的叙述中,正确的是(   )。[2005年9月 填空第29题]     A.KeyAscii参数是所按键的ASCII码   B.KeyAscii参数的数据类型为字符串     C.KeyAscii参数可以省略      D.KeyAscii参数是所按键上标注的字符     解析:KeyPress事件带有一个参数,这个参数有两种形式。第一种形式是Index As Integer,只用于控件数组;第二种形式是KeyAscii As Integer,用于单个控件。参数KeyAscii是一个预定义的变量,执行KeyPress事件过程时,KeyAscii是所按键的ASCII码,并且该参数不能省略。     答案:A     小技巧:在默认情况下,控件的键盘事件优先于窗体的键盘事件。因此在发生键盘事件时,总是先激活控件的键盘事件。如果希望窗体先接收键盘事件,则必须把窗体的KeyPreview属性设置为True,否则不能激活窗体的键盘事件。 10.1.2  考点2:KeyDown和KeyUp事件     与KeyPress事件不同,KeyPress并不反映键盘的直接状态,而KeyDown和KeyUp事件返回的是键盘的直接状态。换言之,KeyDown和KeyUp事件返回的是“键”,而KeyPress事件返回的是“字符”的ASCII码。例如,当按字母键“A”时,KeyDown所得到的KeyCode码(KeyDown事件的参数)与字母键“a”是相同的,而对KeyPress来说,所得到的ASCII码不一样。     KeyDown和KeyUp事件的参数也有两种形式,其中Index As Integer只用于控件数组,而KeyCode As Integer,Shift As Integer用于单个控件。     说明:     参数KeyCode是按键实际的ASCII码。该码以“键”为准,而不是以“字符”为准。也就是说,大写字母与小写字母使用同一个键,它们的KeyCode相同(使用大写字母的ASCII码);     转换键,指的是三个转换键的状态,包括Shift、Ctrl和Alt,这三个键分别以二进制形式表示,每个键有三位,Shift键为001,Ctrl键为010,Alt键为100;     KeyDown是当一个键被按下时所产生的事件,而KeyUp是松开被压下的键时所产生的事件。     例10.1.2  在窗体上画1个文本框,其名称为Text1,然后编写如下过程:     Private Sub Text1_KeyDown (KeyCode As Integer ,Shift As Integer)      Print Chr(KeyCode)     End Sub     Private Sub Text1_KeyUp(KeyCode As Integer,Shift As Integer)      Print  Chr(KeyCode+2)     End Sub     程序运行后,把焦点移到文本框中,此时如果敲击“A”键,则输出结果为(   )。[2006年4月 选择第29题]     A.A     B.A    C.A    D.A     A             B     C        D     解析:敲击“A”键的动作,首先是按下该键触发Text1_KeyDown事件,通过Print Chr(KeyCode)输出“A”;然后是松开被按下的“A”键,此时触发Text1_KeyUp事件,通过Print  Chr(KeyCode+2)输出“C”。     答案:C     警钟长鸣:在键盘上按下一个键总是会触发KeyDown事件、KeyUp事件和KeyPress事件。        例10.1.3  在窗体上画1个命令按钮和1个文本框,其名称分别为Command1和Text1,然后编写如下代码:     Dim SaveAll As String     Private Sub Command1_Click()      Text1.Text=Left(UCase(SaveAll),4)     End Sub     Private Sub Text1_KeyPress(KeyAscii As Integer)      SaveAll = SaveAll +Chr(KeyAscii)     End Sub     程序运行后,在文本框中输入abcdefg,单击命令按钮,则文本框中显示的内容是____。[2006年4月 填空第9题]     解析:Text1_KeyPress过程将用户在文本框中所输入的内容保存到变量SaveAll中,本例输入“abcdefg”,则SaveAll=“abcdefg”;Left(UCase(SaveAll),4)函数即为对“abcdefg”转换为大写后取前四个字母,即“ABCD”。     答案:ABCD     小技巧:利用逻辑运算符And可以判断是否按下了某个转换键,可以在事件过程中通过判断是否按下了某个或某几个键来执行指定的操作。 第11章 可视化程序设计     本章主要考查可视化程序设计,包括菜单程序设计、对话框程序设计、多重窗体程序设计、Visual Basic工程结构与执行控制等知识点。通过对历年试卷内容的分析,本章考核内容约占6%,属于一般考查对象,下次考试将保持上升趋势。     11.1  菜单程序设计     菜单的基本作用有两个,一是提供人机对话的界面,以便让使用者选择应用系统的各种功能;二是管理应用系统,控制各种功能模块的运行。     在实际应用中,菜单可分为两种基本类型,即下拉式菜单和弹出式菜单。     11.1.1  考点1:下拉式菜单     下拉式菜单是一种典型的窗口式菜单。在下拉式菜单系统中,一般有一个主菜单,其中包括若干选择项,主菜单的每一项都可以“下拉”出下一级菜单供用户选择或输入信息。操作完毕后菜单从屏幕上消失,并恢复原来的屏幕状态。     1.菜单编辑器     Visual Basic中的菜单通过菜单编辑器,即菜单设计窗口建立。可以通过以下4种方式进入菜单编辑器:     执行“工具”菜单中的“菜单编辑器”命令;     使用热键Ctrl+E;     单击工具栏中的“菜单编辑器”按钮;     在要建立菜单的窗体上单击鼠标右键,将弹出一个菜单,然后单击“菜单编辑器”命令。     菜单编辑器窗口分为三个部分:即数据区、编辑区和菜单项显示区。     (1)数据区     数据区用来输入或修改菜单项、设置属性。在数据区中,必须提供菜单项的“标题”和“名称”属性,“有效”属性和“可见”属性一般默认为True,只有在必要时才设置其他属性。在设置“标题”属性时,如果输入一个减号(—),则可在菜单中加入一条分隔线;如果在菜单“标题”中包含“&”,则可将该符号后的字母作为访问键(通过ALT加该键打开该菜单)。     (2)编辑区     编辑区用来对输入的菜单项进行简单的编辑。     (3)菜单项显示区     菜单项显示区用来显示所输入的菜单项。菜单在数据区输入,在编辑区进行位置调整,在菜单项显示区显示。     2.菜单项的控制     (1)有效性控制     菜单中的某些菜单项应能根据执行条件的不同进行动态变化,即当条件满足时可以执行,否则不能执行。     菜单项的“有效”属性,菜单项的有效性就是通过该属性来控制的。实际上,只要把一个菜单项的“有效”属性设置为False,就可以使其失效,运行后该菜单项变为灰色;为了使一个失效的菜单项变为有效,只要把它的“有效”属性重新设置为True即可实现。     (2)菜单项标记     所谓菜单项标记,就是在菜单项前加上一个“√”。它有两个作用:一是可以明显地表示当前某个(或某些)命令状态是“On”或“Off”二是可以表示当前选择的是哪个菜单项。菜单项标记通过菜单设计窗口中的“复选”属性设置,当该属性为True时,相应的菜单项前有“√”标记;如果该属性为False,则相应的菜单项前没有“√”标记。     (3)键盘选择     用键盘选取菜单通常有两种方法,即热键和访问键(Access Key)。     3.菜单项的增减     菜单项的增减通过控件数组来实现。一个控件数组含有若干个控件,这些控件的名称相同,所使用的事件过程相同,但其中的每个元素可以有自己的属性。控件数组和普通数组一样,可通过下标(Index)访问控件数组中的元素。控件数组可以在设计阶段建立,也可以在运行时建立。。        例11.1.1  假定有一个菜单项,名为MenuItem,为了在运行时该菜单项失效(变灰),应使用的语句是(   )     A.MenuItem.Enabled= False      B.MenuItem.Enabled= True     C.MenuItem.Visible= True       D.MenuItem.Visible= False     解析:Enabled属性设置菜单是否可用;Visible属性设置菜单是否可见。菜单项标记通常是动态地加上或取消的,因此应在程序代码中根据执行情况动态设置。     答案:A     重要提示:只有当某个窗体为活动窗体时,才能用上面介绍的四种方法打开菜单编辑器窗口。 11.1.2  考点2:弹出式菜单     建立弹出式菜单通常分两步进行:首先用菜单编辑器建立菜单,然后用PopupMenu方法弹出显示。第一步的操作与前面介绍的基本相同,惟一的区别是必须把菜单名(即主菜单项)的“可见”属性设置为False(子菜单项不要设置为False)。PopupMenu方法用来显示弹出式菜单,其一般格式如下:     对象.PopupMenu菜单名,Flags,X,Y,BoldCommand     说明:     当省略“对象”时,弹出式菜单只能在当前窗体中显示。如果需要弹出式菜单在其他窗体中显示,则必须加上窗体名;     Flags的两组参数可以单独使用,也可以联合使用。当联合使用时,每组中取一个值,二者相加;如果使用符号常量,则两个值用Or连接;     弹出式菜单的位置由X、Y和Flags参数共同指定。        例11.1.2  在菜单编辑器中建立一个名称为Menu(   )的菜单项,将其“可见”属性设置为False,并建立其若干子菜单,然后编写如下过程:     Private Sub Form_MouseDown (Button As Integer ,Shift As Integer ,X As Single, Y As Single)      If Button = 1 Then         PopupMenu Menu()      End If     End Sub     则以下叙述中错误的是(   )[2006年4月 选择第32题]     A.该过程的作用是弹出一个菜单      B.单击鼠标右键时弹出菜单     C.Menu()是在菜单编辑器中定义的弹出菜单的名称  D.参数X、Y指明鼠标当前位置的坐标     解析:通常把PopupMenu方法放在MouseDown事件中,该事件响应所有的鼠标单击操作,用Button参数控制左右键选择。Button=1为单击鼠标左键时弹出菜单,Button=2为单击鼠标右键时弹出菜单。     答案:B  第12章 数 据 文 件     本章主要考查Visual Basic中的数据文件操作,包括Visual Basic文件概述、基本文件操作语句与函数、顺序文件与随机文件和文件系统控件。通过对历年试卷内容的分析,本章考核内容约占8%,属于一般考查对象。     12.1  Visual Basic文件概述     12.1.1  考点1:文件概述     1.文件概念     所谓“文件”,是指记录在外部介质上的数据的集合。     2.在程序设计中使用文件的原因     文件是使一个程序可以对不同的输入数据进行加工处理、产生相应输出结果的常用手段。      使用文件可以方便用户,提高上机效率;      使用文件可以不受内存大小的限制。     3.文件结构     为了有效地存取数据,数据必须以某种特定的方式存放,这种特定的方式称为文件结构。Visual Basic文件由记录组成,记录由字段组成,字段由字符组成。     (1)字符      字符是构成文件的最基本单位。字符可以是数字、字母、特殊符号或单一字节。Visual Basic支持双字节字符,当计算字符串长度时,一个西文字符和一个汉字都可作为一个字符计算,但它们所占的空间是不一样的。例如:字符串“系统分析员协会顾问团CSAI”的长度为14个字符,而所占的存储空间为24个字节。     (2)字段      字段也称为域。字段由若干个字符组成,用来表示一项数据。     (3)记录      记录由一组相关的字段组成。     (4)文件      文件由记录构成,一个文件含有一个以上的记录。     4.文件种类      根据不同的分类标准,文件可分为不同的类型。     (1)根据数据性质划分      程序文件:存放的是可以由计算机执行的程序,包括源文件和可执行文件。      数据文件:存放普通的数据,这类数据必须通过程序来存取和管理。 (2)根据数据的存取方式和结构划分      顺序文件:文件中的记录一个接一个地存放。顺序文件的组织比较简单,但维护困难。主要优点是占空间少,容易使用。     随机存取文件:又称直接存取文件,每个记录的长度是固定的,根据记录号进行读写操作。优点是数据的存取灵活、方便,速度较快,容易修改。缺点是占空间较大,数据组织较复杂。     (3)根据数据的编码方式划分     ASCII文件:又称文本文件,它以ASCII方式保存文件。可以用字处理软件建立和修改。      二进制文件:以二进制方式保存的文件。不能用普通的字处理软件编辑,占空间较小。     例12.1.1  以下文件扩展名中,不属于程序文件的是(   )。      A..exe     B..frm    C..mdb    D..vbp      解析:.exe文件为可执行文件;.frm文件为Visual Basic的窗体文件;.mdb文件为Access数据库文件;.vbp文件为Visual Basic的工程文件。      答案:C
本文档为【江苏省计算机等级考试二级VB考试重点难点分析讲解】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_530490
暂无简介~
格式:doc
大小:177KB
软件:Word
页数:45
分类:工学
上传时间:2018-09-11
浏览量:53