




已阅读5页,还剩84页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第1章 Visual Basic程序设计 概述 第1章 Visual Basic程序设计概 述 本章主要介绍程序设计的一些基本知识、基本概念和 基本方法,为学习和掌握Visual Basic程序设计奠定基础 。 v1.1 计算机程序设计概述 计算机程序就是计算机解决某些特定问题所需的符号 化指令序列,或者说是用计算机语言描述的特定问题的解 决步骤。编写程序的过程称为程序设计,在程序设计时离 不开程序设计语言。通常把给计算机编制程序的符号系统 及规则称为计算机的程序设计语言。这些符号系统及规则 构成了计算机的指令系统。当我们利用计算机完成一项工 作时,只需要告诉计算机什么时候、在什么条件下干什么 ,计算机便根据指令一条一条地执行,并返回结果。 1.1.1 程序设计语言简介 任何一个计算机系统都是按照人们用某种程序设计语 言编写的程序进行工作的,人们通过程序设计语言编写的 程序来指挥和控制计算机运行。程序设计语言是人与计算 机进行交流的有效工具,在计算机科学技术的发展过程中 ,发挥了巨大作用。 程序设计语言经历了从低级到高级的发展阶段。 1. 机器语言 计算机能直接识别的程序设计语言只有机器语言。机 器语言是计算机能执行的指令代码,这种语言是由若干0和 1的序列组成的指令,也就是人们常说的二进制代码。用机 器语言设计的程序,称为机器语言程序。这是一种最低级 的计算机语言程序。 2. 汇编语言 汇编语言用比较直观、便于记忆的指令符号来代替二 进制数字的机器指令代码,汇编语言的每条指令通常使用 英文单词的缩写形式表示,也叫助记符。 3. 高级语言 高级语言接近人们熟悉的自然语言(主要指英语), 掌握与使用都十分方便。高级语言具有通用性,在其初始 阶段是面向过程的语言。高级语言与具体的计算机指令系 统没有直接关系,因此用高级语言设计的程序可以在各种 类型的计算机上运行。 计算机并不能识别与执行用高级语言设计的程序,因 此,必须将高级语言程序转换为机器语言程序,才能在计 算机上得以执行,这种转换的过程叫“翻译”。 任何一种高级语言系统都包含有专门用于“翻译”的 程序。对高级语言的“翻译”有两种方式,一种是“解释 ”方式,即“翻译”一句执行一句,负责这种“翻译”方 式的程序叫解释程序;另一种是“编译”方式,是将整个 程序“翻译”完毕后再予以执行,负责这种“翻译”方式 的程序叫编译程序 。 “翻译”前的程序叫源程序或源代码,源代码通常是 文本形式;“翻译”后的程序叫目标程序或目标代码,目 标代码是二进制形式。 用解释程序“翻译”执行程序比编译程序“翻译”执 行程序慢得多。不论是解释还是编译,在“翻译”过程中 都会自动检查源程序中的语法错误。 1.1.2 算法及其描述 1. 算法的概念 什么是算法?当代著名计算机科学家D.E.Knuth称:“ 一个算法,就是一个有穷规则(指令)的集合。其中之规 则规定了一个解决某一特定类型的问题的运算序列。”简 单地说,任何解决问题的过程都是由一定的步骤组成的, 把解决问题确定的方法和有限的步骤称作为算法。 通俗地说,算法就是指为解决一个问题而采取的方法 和步骤,或者说是解题步骤的精确描述。不要认为只有“ 计算”问题才有算法。广义地说,处理任何问题都有一个 “算法”问题,例如,菜谱就包含算法,因为它除了列出 做菜的原料以外,还列出操作的每一步骤。当然,这里讨 论的是计算机算法,即计算机能执行的算法。 2. 算法的表示 表示一个算法可以采用不同形式。 (1) 用自然语言表示算法 【例1-1】计算函数M(x)的值: 其中a,b,c为常数。 算法分析:本题是一个数值运算问题。其中M代表要计 算的函数值,有两个不同的表达式,根据x的取值决定采用 哪一个算式。根据计算机具有逻辑判断的基本功能,用计 算机解题的算法如下: 1) 将a、b、c和x的值输入到计算机。 2) 判断x a,如果条件成立,执行3),否则执行4)。 3) 按表达式bx + 2a计算出结果存放到M中,然后执行 5)。 4) 按表达式a(c x) + 3c计算出结果存放到M中,然后 执行5)。 5) 输出M的值。 6) 算法结束。 (2) 用流程图表示算法 流程图是用一些图框、流程线以及文字说明来描述解决 问题的方法与步骤。用流程图来表示算法,直观、形象、 容易理解。 1) 传统流程图:美国国家标准化协会ANSI(American National Standard Institute)规定了一些常用的流程图 符号,见表1-1。 用流程线将各种操作图符号连接在一起就构成了一个完 整的算法流程图。这种流程图称为传统流程图。 表1-1 流程图符号 符号名 称说 明 起止框表示算法的开始与结束。 判断框 用来根据给定的条件是否满足决定执行两条路径中 的某一条路径。 处理框用来表示赋值等一般操作。 输入输出框表示输入或输出操作。 流程线表示流程的方向。 连接点 用于将没有画在一起的同一流程的各部分连接起来 。 例1-1中算法的流程图如图1-1所示。 图1-1 传统流程图 2) N-S流程图:传统流程图虽然形象直观,但对流程 线未作限制,使用者可以毫无顾忌地使流程线随意转来转 去,使流程变得没有规律,阅读者要花很大精力去追踪流 程,从而使人们难以理解程序算法的逻辑。如果程序较复 杂,流程线就会如同一团乱麻,人们将这种算法比喻成一 碗面条(A Bowl of Spaghetti),乱无头绪。这种算法难 以阅读和修改,从而使算法的可靠性和可维护性难以保证 。 在N-S流程图中,完全去掉了流程线。全部算法写在一 个大矩形框中,在某一矩形框中还可以包含一些属于它的 小矩形框。这种流程图又称为盒图,因为每个矩形如同一 个方盒。 使用N-S流程图表示【例1-1】的算法如图1-3所示。 说明:本书所绘的N-S流程图是经典N-S流程图的改进 ,称为N-S-Z流程图。 Input a, b, c和x 若x = a 是M = bx + 2a 否M = a(c x) + 3c Output M 1.1.3 程序设计方法概述 程序设计方法种类很多,主要有模块化程序设计方法、 结构化程序设计方法、面向对象程序设计方法等。 1. 模块化程序设计方法 模块化程序设计方法是一个常用且有效的方法。在设计 和编写大型程序时,可以对其进行模块化分解,以降低程 序的复杂性,提高程序的正确性、可靠性、可读性和可维 护性。 模块是数据说明、接口声明和执行语句等程序对象的 集合,可独立命名,并通过模块名来调用、访问和执行, 如VB语言的子过程、函数、模块等程序对象可看成是模块 。模块化就是把大程序划分成若干模块,每个模块完成一 个子功能,模块间相互协调,共同完成特定功能,其实质 是把复杂问题分解成许多容易解决的小问题,如图1-3所示 。 图1-3 问题分解 大的、比较复杂的问题 子问题1子问题2子问题3子问题4 子问题21子问题22 2. 结构化程序设计方法 结构化程序设计方法产生于20世纪60年代末,它对后 来的程序设计方法的研究和发展产生了重大影响,直到今 天它仍然是程序设计中采用的主要方法。 结构化程序设计的概念最早由著名计算机科学家 E.W.Dijkstra提出。1966年,Bohm和Jacopini证明了“只 用三种基本的控制结构就能实现任意单入口和单出口的程 序”。这三种基本控制结构是“顺序结构”、“判断结构 ”和“循环结构”,如图1-4所示。1972年,IBM公司的 Mills进一步提出,程序应该只有一个入口和一个出口。 1971年,IBM公司在纽约时报信息库管理系统的设计中首次 成功地使用了结构化程序设计技术。 图1-4 三种基本控制结构的N-S-Z流程图 操作A条件条件 操作B真操作A循环体 操作C假操作B (a) 顺序结构(b) 判断结构(c) 循环结构 结构化程序设计主要包括:一是使用三种基本控制结 构;二是采用自顶向下和逐步求精方法。 自顶向下和逐步求精方法是求解复杂问题的有效方法 。自顶向下和逐步求精方法是由抽象到具体、由粗到细的 方法。第一次细化称为“顶层设计”,然后通过一步一步 细化,它们依次称为第二层、第三层设计,直到不需细化 为止。细化结果可得到一个树型层次结构图,如图1-5所示 。 图1-5 层次结构图 处理学校事务 处理学生事务处理教学事务处理财务事务处理科研事务顶层设计 第二层设计 第三层设计 3. 面向对象程序设计方法 模块化和结构化程序设计方法属于传统的程序设计方 法。但用传统程序设计方法开发的程序不易维护和修改, 一旦需要修改,将牵一发而动全局,修改工作量将会大幅 度增加。针对传统程序设计方法的不足和缺陷,在20世纪 80年代,开始研究面向对象程序设计方法,进入20世纪90 年代,面向对象程序设计方法趋于完善和成熟,同时基于 面向对象的程序设计语言不断出现,高级语言开始引入面 向对象概念和理念,如C+语言。 面向对象的程序设计通过类、对象、继承、多态等机 制形成一个完善的编程体系。面向对象编程(Object- Oriented Programming,OOP)将程序设计中的数据与对数 据的操作作为一个不可分割的整体,通过由类生成的对象 来组织程序。对象包含属性与方法,能识别和响应一定的 事件。 面向对象程序设计并不绝对排斥结构化程序设计方法 ,而将结构化程序设计方法中的三种基本结构变为其程序 设计中局部代码设计的基本结构,例如,在面向对象程序 设计中,对象的事件方法、属性等代码的设计仍然遵循三 种基本结构的原则。 面向对象程序设计方法一般分三级设计:概念级、系 统级和规范级。 概念级设计:从实际问题出发,分析用户需求和功能 需求,识别问题中所涉及的所有对象(实体)及相互关系, 根据分析结果建立求解问题的概念模型(用图形表示)。 详细描述每一对象的属性(一组变量、数据结构、状态) 和操作(置初值、查询、修改、运算)。 系统级设计:进一步分析对象及相互作用,对对象进 行取舍,增加附加对象,选择控制流方法,创建对象实例 ,将概念级创建的概念模型转换成现实模型。 规范级设计:分析现实模型,建立和绘制“类结构表 ”,明确描述类层次结构及其继承关系,描述类的所有操 作和方法,将现实模型转换成便于程序实现的设计规范, 程序员根据设计规范设计算法和编写程序。 v1.2 Visual Basic简介 Visual Basic(简称VB)是美国微软(Microsoft) 公司推出的Windows环境下的软件开发工具,使用VB可 以既快又简单地开发Windows应用软件。 1.2.1 Visual Basic概述 Visual是指开发图形用户界面(GUI)的方法。 Visual的意思是“视觉的”或“可视的”,也就是直观的编程 方法。在VB中引入了控件的概念,如各种各样的按钮、文 本框、复选框等。VB把这些控件模式化,并且每个控件都 由若干属性来控制其外观、工作方法。这样,采用Visual 方法无需编写大量代码去描述界面元素的外观和位置,而 只要把预先建立的控件加到窗体上。 1.2.2 Visual Basic的发展过程 早在1991年,为了简化Windows应用程序的开发,微 软公司推出了Visual Basic 1.0。比尔盖茨说,Visual Basic 1.0的推出是“惊世骇俗的”、“令人震惊的新奇迹”。 它极大地改变了人们对Windows的看法以及使用 Windows的方式。 1992年,经过对Visual Basic 1.0的修改后,微软推 出了Visual Basic 2.0。 1993年经再次修改完善后,Visual Basic 3.0上市。 1.2.2 Visual Basic的发展过程 1995年,随着Windows 95轰轰烈烈的发布,Visual Basic 4.0也随之问世。 1997年,微软公司开始推出Windows开发工具套件 Microsoft Visual Studio 1.0,其中包括了Visual Basic 5.0,1998年发布的Microsoft Visual Studio 98则包含了 Visual Basic 6.0。 Visual Basic 5.0以前的版本主要应用于DOS和 Windows 3.x环境中16位程序的开发,从Visual Basic 5.0以后的版本则只能运行在Windows 95或Windows NT 操作系统下,是一个32位应用程序的开发工具。 Visual Basic 6.0共有3个版本:标准版、专业版、企业 版。其中标准版主要是为初学者了解基于Windows的应用 程序开发而设计的;专业版主要是为专业人员创建客户服 务器应用程序而设计的;企业版则是为创建更高级的分布 式、高性能的客户服务器或InternetIntranet上的应用程 序而设计的。 2003年推出Visual Basic .NET,2005年推出Visual Basic 2005。 1.2.3 Visual Basic的特点 VB是从BASIC发展而来的,对于开发Windows应用程 序而言,VB是目前所有开发语言中最简单、最容易使用的 语言。作为程序设计语言,VB程序设计具有以下特点。 1. 可视化的设计平台 2. 面向对象的设计方法 3. 事件驱动的编程机制 4. 结构化的设计语言 5. 充分利用Windows资源 6. 开放的数据库功能与网络支持 v1.3 Visual Basic程序设计的基本概念 传统的编程方法使用的是面向过程、按顺序进行的机制 ,其缺点是程序员始终要关心什么时候发生什么事情,处 理Windows环境下的事件驱动方式工作量太大。VB采用 的是面向对象、事件驱动编程机制,程序员只需编写响应 用户动作的程序,如移动鼠标、单击事件等,而不必考虑 按精确次序执行的每个步骤,编写代码相对较少。另外, VB提供的多种“控件”可以快速创建强大的应用程序而不需 涉及不必要的细节。 1.3.1 可视化编程与事件驱动编程 VB使用的“可视化编程”方法,是“面向对象编程”技术的 简化版。在VB环境中所涉及到的窗体、控件、部件和菜单 项等均为对象,程序员不仅可以利用控件来创建对象,而 且还可以建立自己的“控件”,这是Windows环境下的编程 新概念。 1.3.1 可视化编程与事件驱动编程 利用可视化编程,程序员通过对鼠标进行单击操作就能 够创建图形用户界面(GUI)。程序员编写代码来描述用 户与这个GUI交互时(单击、按键、双击等)所发生的事 件,这些称为事件的内容是由Windows操作系统传递给程 序的。 编写响应这些事件的代码称为事件驱动编程。利用事件 驱动编程,用户(不是程序员)可以指明程序执行的顺序 。实际上是用户“驱动”程序,而不是程序“驱动”用户,这 样计算机将变得更加“友好”。 1.3.2 对象的属性、事件和方法 在现实生活中,任何一个实体都可以视为一个对象( Object)。如一只气球是一个对象,一台电脑也是一个对 象。 在VB中,常用的对象有工具箱中的控件、窗体、菜单、 应用程序的部件以及数据库等。从可视化编程的角度来看 ,这些对象都具有属性(数据)和行为方式(方法)。简 单地说,属性用于描述对象的一组特征,方法为对象实施 一些动作,对象的动作则常常要触发事件,而触发事件又 可以修改属性。一个对象建立以后,其操作就通过与该对 象有关的属性、事件和方法来描述。 1. 对象的属性 每一种对象都有一组特定的属性。有许多属性可能为大 多数对象所共有,如BackColor属性定义对象的背景色。 还有一些属性只局限于个别对象,如只有命令按钮才有 Cancel属性,该属性用来确定命令按钮是否为窗体默认的 取消按钮。 1. 对象的属性 每一个对象属性都有一个默认值,如果不明确地改变该 值,程序就将使用它。通过修改对象的属性能够控制对象 的外观和操作。对象属性的设置一般有两条途径。 1) 选定对象,然后在属性窗口中找到相应属性直接设置 。这种方法的特点是简单明了,每当选择一个属性时,在 属性窗口的下部就显示该属性的一个简短提示,缺点是不 能设置所有所需的属性。 2) 在代码中通过编程设置,格式为: 对象名.属性名 属性值 如下述代码可以设置标签控件Label1的标题为“轻轻松 松学用VB6.0”: Label1.Caption“轻轻松松学用VB6.0“ 2. 对象的事件 事件(Event)就是对象上所发生的事情。在VB中,事 件是预先定义好的、能够被对象识别的动作,如单击( Click)事件、双击(DblClick)事件、装载(Load)事 件、鼠标移动(MouseMove)事件等,不同的对象能够 识别不同的事件。当事件发生时,VB将检测两条信息,即 发生的是哪种事件和哪个对象接收了事件。 每种对象能识别一组预先定义好的事件,但并非每一种 事件都会产生结果,因为VB只是识别事件的发生。为了使 对象能够对某一事件做出响应(Respond),就必须编写 事件过程。 事件过程是一段独立的程序代码,它在对象检测到某个 特定事件时执行(响应该事件)。一个对象可以响应一个 或多个事件,因此可以使用一个和多个事件过程对用户或 系统的事件作出响应。程序员只需编写必须响应的事件过 程,而其他无用的事件过程则不必编写,如命令按钮的“单 击”(Click)事件比较常见,其事件过程需要编写,而其 MouseDown或MouseUp事件则可有可无,程序员可根据 需要选择。 3. 对象的方法 一般来说,方法就是要执行的动作。上面所述的气球本 身就具有其固有的方法和动作。如:充气方法(用氦气充 满气球的动作),放气方法(排出气球中的气体)和上升 方法(放手让气球飞走)。用户对具体实现过程并不关心 ,关键是最终收到的效果。 VB的方法与事件过程类似,它可能是函数,也可能是过 程,它用于完成某种特定功能而不能响应某个事件。如对 象打印(Print)方法、显示窗体(Show)方法、移动( Move)方法等。每个方法完成某个功能,但其实现步骤和 细节用户既看不到、也不能修改,用户能做的工作就是按 照约定直接调用它们。 方法只能在代码中使用,其用法依赖于方法所需的参 数的个数以及它是否具有返回值。当方法不需要参数并且 也没有返回值时,可用下面的格式调用对象方法。 对象名.方法名 如图片框Picture1有刷新显示方法Refresh,在事件 过程代码中调用该方法的代码为: Picture1.Refresh 1.3.3 Visual Basic的编程环境 1. 集成开发环境介绍 启动VB后,出现“新建工程”对话框,如图1-6所示。 使用VB开发的应用程序或其他程序都被称为“工程”。选 择“新建”选项卡可以建立一个新的工程,选择“现存”选项卡 可以打开原来已有的工程,选择“最新”选项卡可以打开最近 建立或使用过的工程。 图1-6 “新建工程”对话框 在“新建”选项卡中选中“标准EXE”,然后单击“打开”按 钮,出现集成开发环境的主界面,如图1-7所示。 图1-7 VB 6.0集成开发环境 VB 6.0集成开发环境除了具有标准Windows环境的标题 栏、菜单栏、工具栏外,还有工具箱、属性窗口、工程管理 器窗口、窗体设计器、立即窗口、窗体布局窗口等开发工具 。 VB集成开发环境中的默认工具栏是“标准”工具栏,“标准 ”工具按钮见表1-2。 表1-2 “标准”工具按钮 图标名称与功能快捷键 添加标准EXE工程用来添加新的工程到工作组中。单击其右边的箭头,将弹出一个下拉菜单,可以从 中选择需要添加的工程类型 添加窗体用来添加新的窗体到工程中,单击其右边的箭头,将弹出一个下拉菜单,可以从中选择需要 添加的窗体类型 菜单编辑器显示菜单编辑器对话框 Ctrl+E 打开工程用于打开已有的工程文件 Ctrl+O 保存工程用于保存当前的工程文件 启动开始运行当前的工程F5 中断暂时中断当前工程的运行 Ctrl+ Break 结束结束当前工程的运行 工程资源管理器打开工程资源管理器窗口 Ctrl+R 属性窗口打开属性窗口F4 窗体布局窗口打开窗口布局窗口 对象浏览器打开对象浏览器对话框F2 工具箱打开工具箱窗口 数据视图窗口打开数据视图窗口 可视化部件管理器打开可视化部件管理器 2. 控件工具箱 新建或打开“标准EXE”工程时,VB将同时打开控件工具 箱。 VB的控件工具箱包含了建立应用程序所需的各种控件, 如图1-8左所示。另外,VB还提供了很多ActiveX控件。使 用这些控件有两种方法:一是向工具箱中添加需要的控件 ,二是自己定义一张“选项卡”。 图1-8 控件工具箱与部件对话框 2. 控件工具箱 (1) 添加ActiveX控件 向工具箱中添加ActiveX控件的步骤如下: 1) 在工具箱的空白处单击鼠标右键。在弹出的快捷菜单 中选择“部件”,或单击“工程”菜单中的“部件”子菜单,弹 出“部件”对话框(图1-8右)。 2) 在打开的“部件”对话框中选中所需要的控件,然后单 击“确定”按钮后退出,所选择的控件即可添加到工具箱中 。 要删除工具箱中的ActiveX控件,按照上述操作去掉选 中标志。 (2) 定义选项卡 VB 6.0与早期版本的工具箱的主要差别就是:可以定义 选项卡来组织、安排控件。按照下列操作步骤可将一些常 用控件保存在一张单独的选项卡上。 1) 在工具箱的空白处单击右键。 2) 在弹出的快捷菜单中选择“添加选项卡”。 3) 在打开的“新选项卡名称”对话框中输入选项卡名称, 如ww,如图1-9所示。然后单击“确定”按钮后退出。 图1-9 输入选项卡名称 4) 用鼠标左键将所需的控件“拖”到创建的选项卡ww上 ,如图1-10所示。 5) 用同样的方法可以添加多个选项卡,并且通过单击选 项卡名称在不同的选项卡之间切换。 图1-10 添加控件到选项卡 3. 工程窗口 工程文件就是与该工程有关的所有文件和对象的清单, 这些文件和对象自动链接到工程文件上,每次保存工程时 ,其相关文件信息随之更新。当然,某个工程下的对象和 文件也可供其他工程共享使用。在工程的所有对象和文件 被汇集在一起并完成编码以后,就可以编译工程,生成可 执行文件。 “工程窗口”类似于Windows下的资源管理器,在这个窗 口中列出了当前工程中的窗体和模块,其结构用树状的层 次管理方法显示。如图1-11所示。 图1-11 工程窗口 3. 工程窗口 在工程窗口中有“查看代码”、“查看对象”和“切换文件夹 ”3个按钮。单击“查看代码”按钮可打开“代码编辑器”查看 代码,单击“查看对象”按钮可打开“窗体设计器”查看正在 设计的窗体,单击“切换文件夹”按钮则可隐藏或显示包含 对象文件夹中的个别项目列表。 4. 属性窗口 “属性”窗口包含选定对象(窗体或控 件)的属性列表,在设计程序时可通过修 改对象的属性设计其外观和相关数据,这 些属性值将是程序运行时各对象属性的初 始值。“属性窗口”的内容包括: 对象下拉列表框:标识当前选定对象 的名称以及所属的类。单击右端的下拉箭 头,可列出当前窗体以及所包含的全部对 象的名称,可从中选择要更改其属性的对 象。 图1-12 属性窗口 4. 属性窗口 属性列表:左列显示所选对象的所有属性名,右列可以 查看和修改属性值。有的属性取值具有预定值,如右侧显 示“.”式按钮或“下拉箭头”式按钮,都有预定值可供选择 。在“属性”列表中双击属性值可以遍历所有选项。选择任 一属性并按F1键可得到该属性的帮助信息。 属性说明:显示所选属性的简短说明。可通过右键快捷 菜单中的“描述”菜单来切换显示或隐藏“属性说明”。 5. 窗体设计器 “窗体设计器”也称为“对象窗口”,主要用来在窗体上设 计应用程序的界面。窗体中的对象(控件)可随意在窗体 上移动、改变大小,但锁定控件后则不可随意修改。工程 中的每一个窗体都有它自己的窗体设计器窗口。如图1-13 左所示。 图1-13 窗体设计器窗口 在窗体的空白区域单击右键,将弹出快捷菜单,可切换 到“代码窗口”、“菜单编辑器”、“属性窗口”,还可以选择“ 锁定控件”和“粘贴”。如图1-13右所示。 6. 代码窗口 “代码窗口”又称“代码编辑器”,各种通用过程和事件过 程代码均在此窗口上编写和修改。双击窗体的任何地方, 右键快捷菜单中的“查看代码”,工程窗口中的“查看代码” 按钮,或者“视图”菜单中的“代码窗口”4种方法均可打开“ 代码窗口”。 在“代码窗口”中有“对象下拉列表框”、“过程下拉列表框 ”和“代码区”(图1-14左)。 图1-14 代码窗口 6. 代码窗口 在“代码窗口”的左下角有两个按钮:“过程查看”和“全模 块查看”按钮。单击“过程查看”按钮,一次只查看一个过程 ;单击“全模块查看”按钮可查看程序中的所有过程。这两 个按钮可切换“代码窗口”的两种查看视图。 7. 立即窗口 使用立即窗口可以在中断状态下查询对象的值,也可以 在设计时查询表达式的值或命令的结果,如图1-17左所示 。图1-17中前3行是输入的命令,第4行是输出的结果。 还可在程序中使用Debug对象,把运行结果输出到立即 窗口,例如程序中有如下代码: Debug.Print “现在是“ & Format(Time, “tttttAM/PM“) 代码的运行结果如图1-17右所示。 图1-17 使用立即窗口 1.3.4 Visual Basic的窗体与控件 1. Visual Basic的窗体 窗体(Form)也就是平时所说的窗口,它是VB编程中 最常见的对象,也是程序设计的基础。各种控件对象必须 建立在窗体上,一个窗体对应一个窗体模块。 (1) 窗体的创建 创建新窗体的步骤如下: 1) 从“工程”菜单中选择“添加窗体”菜单项。 2) 缺省情况下系统将显示如图1-20左所示的“添加窗体” 对话框。 1.3.4 Visual Basic的窗体与控件 1. Visual Basic的窗体 3) 该对话框的“新建”选项卡用于创建一个新窗体,列表 框中列出了各种新窗体的类型,其中选择“窗体”选项时, 建立一个空白的新窗体,选择其他选项时则建立一个预定 义了某些功能的窗体。 4) 单击“打开”按钮,一个新的空白窗体被加入到当前工 程中,同时会显示在屏幕上,如图1-20右所示。 图1-20 创建新窗体 建立新窗体后,它的大小、背景颜色、标题及窗体名称 等特征需要根据应用程序的要求在属性设置窗口中设置完 成。 (2) 窗体的属性 通过修改窗体的属性可以改变窗体内在或外在的结构特 征,控制窗体的外观。常用的窗体属性见表1-3。 表1-3 常用的窗体属性 另外还有用来设置字形的属性如FontName、FontSize 、FontItalic等,设置位置与大小的属性如Top、Left、 Height、Width,属于公共的属性。 属性名用途说明 Name(名称)决定窗体的名称,用于在程序中标识窗体。程序运行时不能修改 AutoRedraw(自动重画)决定窗体被覆盖,又回到该窗体时,是否自动刷新或重画窗体上的所有图形 Caption(标题)决定标题栏中显示的文本 Backcolor(背景色)用于确定窗体的背景颜色 Boderstyle(边框类型)用于决定窗体的边框风格。设有6种预定的属性值供选择 ControlBox(控制箱)决定窗体是否具有控制菜单窗体独有 MaxBotton(最大化按钮)决定窗体的标题栏中是否具有最大化按钮窗体独有 MinBotton(最小化按钮)决定窗体的标题栏中是否具有最小化按钮窗体独有 Movable(可移动)决定该窗体是否可移动 Enabled(可用性)决定该窗体能否接受鼠标或键盘事件(或能否被激活) Visible(可视性)决定窗体是否可见,用于隐藏或显示该窗体 ForeColor(前景色)决定窗体显示的文本(Print方法输出)和图形(画图方法输出)的颜色 Icon(图标)决定窗体最小化(WindowState = 1)时的图标窗体独有 Picture(图片)决定窗体上显示的图像文件 WindowState(窗口状态)通过取值决定窗体是正常、最小化还是最大化状态窗体独有 (3) 窗体的事件 与窗体有关的事件较多,常用的窗体事件见表1-4。 表1-4 常用的窗体事件 事件名说明 Click(单击)单击鼠标左键时发生的事件 DblClick(双击)双击鼠标左键时发生的事件 Load(装载)启动程序,将窗体装入内存时发生的事件 UnLoad(卸载)退出程序,从内存中清除窗体(关闭窗体或执行UnLoad语句)时发生的事件 Activate(激活)当窗体被激活时发生的事件 Deactivate(非活动 ) 其它窗体被激活时发生的事件,此时本窗体不是活动的 Paint(绘制)当窗体被显示、被移动、被放大缩小或需要重新绘制时发生的事件 (4) 窗体的方法 窗体的方法较多,充分利用这些方法,可以提高程序的 开发能力。其常用的方法见表1-5。 表1-5 常用的窗体方法 方法名说明 Circle用于在窗体或图片框中绘制圆、椭圆和弧 Line用于在窗体或图片框中绘制直线或矩形 Point用于获取对象上某点的颜色,其返回值为代表颜色的长整型 PSet用于在窗体或图片框中画点 Refresh用于全部重绘一个窗体 Move用以移动窗体(或控件) TextHeigh、Textwidth 根据窗体或图片框对象的当前字体设置,返回将被打印的文本字符串的高 度和宽度 2. Visual Basic的控件 VB中的控件通常分为三种类型: 标准控件:在默认状态下工具箱中显示的控件都是标准 控件(或称内部控件),这些控件被“封装”在VB的EXE文 件中,不可从工具箱中删除。如命令按钮、单选、复选框 等控件。 ActiveX控件:这类控件单独保存在.ocx类型的文件中 ,其中包括各种版本VB提供的控件,如数据绑定网格、数 据绑定组合框等和仅在专业版和企业版中提供的控件,如 标准公共对话框控件、动画控件和MCI控件等,另外也有 许多软件厂商提供的ActiveX控件。 可插入的对象:用户可将Excel工作表或PowerPoint幻 灯片等作为一个对象添加到工具箱中,编程时可根据需要 随时创建。 工具箱中的每个控件都用一个图形按钮来表示,主要包 括表1-6列出的20个标准控件。 3. 窗体与控件的命名 名称是窗体和控件最重要的属性之一,用于在程序中标 识窗体和控件。窗体或控件的名称就是其Name属性值, 程序运行时不能修改。在缺省的情况下,系统会自动为窗 体或控件命名,如Form1、Command1等。当窗体中添置 多个同类控件时,系统还会自动为之编号:Command1、 Command2、Command3等等。 为了能见名知义、提高程序的可读性,给对象起一个容 易记忆而又具代表性的名称是十分必要的。为此, Microsoft建议对象的命名规则为:前缀+标识。其中“前缀 ”由对象类型简称的三个小写字母组成,“标识”是该对象的 描述性名称。如关闭程序的命令按钮可以命名为: cmaClose。常用对象命名时所推荐使用的前缀见表1-8。 表1-8 对象的命 名约定 其中n = 1 ,2,3。 说明:必须 在设计时通过 属性窗口为对 象设置新的 Name(名称 )属性值。 对象名称前缀默认值举例 CheckBox(复选框)chkChecknchkReadOnly ComboBox(组合框)cboComboncboEnglish CommandButton(命令按钮)cmdCommandncmdExit CommonDialog(通用对话框)dlgCommonDialogndlgFileOpen Data(数据)datDatandatBiblio DirListBox(目录列表框)dirDirListndirSource DriveListBox(驱动器列表框)drvDriveListndrvTarget FileListBox(文件列表框)filFileListnfilSource Form(窗体)frmFormnfrmStart Frame(框架)fraFramenfraLanguage HScrollBar(水平滚动条)hsbHScrollnhsbVolume Image(图象)imgImagenimgIcon Label(标签)lblLabelnlblOptions Line(直线)linLinenlinVertical ListBox(列表框)lstListnlstPolicyCodes OLE Container(OLE容器)oleOLEnoleWorksheet OptionButton(单选按钮)optOptionnoptGender PictureBox(图片框)picPicturenpicMove Shape(形状)shpShapenshpCircle TextBox(文本框)txtTextntxtLastName Timer(计时器)tmrTimerntmrAlarm VScrollBar(垂直滚动条)vsbVScrollnvsbRate v1.4 Visual Basic编程初步 1.4.1 Visual Basic可视化编程的步骤 VB可视化编程的一般步骤如下: 1) 设计界面。先建立窗体,再利用控件在窗体上创建各 种对象。 2) 设置属性。设置窗体或控件等对象的属性。 3) 编写代码。 当然,有时也可以在创建对象的同时,一边设置对象的 属性,一边编写事件过程代码。 下面通过编写如图1-21左所示的一个简单的VB应用程序 来说明可视化编程的方法。 1. 新建一个工程 在VB环境中开发的每个应用程序都被称为工程,新建一 个工程有如下两种方法: 1) 启动VB后,系统显示“新建工程”对话框,在“新建工程” 对话框的选项卡选择“标准EXE”,然后单击“打开”按钮。 2) 在“文件”菜单中选择“新建工程”子菜单,然后在“新建 工程”对话框中选择“标准EXE”并单击“打开”按钮。 上述两种方法均可以进入VB的集成开发环境(如图1-7 所示),开始设计工程,即应用程序。设计工程直接面对 的是窗体,因此主要工作就是在“窗体设计器”中完成窗体 的设计。系统默认的窗体只有一个Form1,其窗体名称和 标题属性均默认为Form1。根据工程设计需要,还可以添 加多个窗体,添加的窗体依次为Form2、Form3。 图1-21 一个简单的例子 2. 界面设计 VB应用程序设计的第1步是进行窗体的界面设计,通常 是在窗体中添加各种控件。 如图1-21右所示,在窗体Form1上添加程序所需的控件 ,依次分别为标签控件Lable1和命令按钮控件Command1 Command2,同类型的控件序号依次自动增加。这时基 本完成程序的界面设计,下面开始设计各对象的属性。 3. 设置属性 对象属性的设置是在属性窗口中进行的,其操作方法如 下。 1) 首先设置窗体Form1的属性。 在属性窗口中找到标题属性Caption,将其值改为“第1 个例子”,如图1-22左;设置窗体Form1的名称属性Name 为frmFirst,如图1-22中所示,此时工程窗口中的窗体名 称也随之改变(图1-22右)。 窗体的其他属性也可根据程序的需要进行设置。 2) 设置控件的属性。单击窗体上的控件,确认选中该控 件,然后根据需要逐一设置控件的各属性。选中标签控件 “Label1”,将其边框风格属性(BorderStyle)改为:1 Fixed。然后用鼠标单击背景颜色属性(BackColor)右边 的箭头按钮,从弹出的调色板窗口中选择“白色”(如图1- 23左),用鼠标单击字体属性(Font)右边的“”按钮, 从弹出字体对话框中设置相应的字体类型、字体样式和字 体大小(如图1-23右)。 另外将两个命令按钮的标题分别设置为“欢迎(&H)”和“ 时间(&T)”,其中“&H”使得字母H下方显示下划线,并且 成为一个热键:当从键盘上键入Alt+H时,相当于 用鼠标单击该命令按钮。 所有对象的属性设置参见表1-9。属性设置后的窗体如 图1-24所示。 表1-9 属性设置 图1-24 属性设置后的窗体 对 象属 性属性值说 明 FormCaption第1个例子窗体的标题 Command1Caption日期(&D)按钮的标题 Command2Caption时间(&T)按钮的标题 Label1BackColor(白色)背景色 BorderStyle1 - Fixed边框风格 FontSize三号字体大小 4. 编写代码 打开“代码编辑器”,单击“对象”下拉列表框右边的箭头 按钮,从中选择Form对象,如图1-25所示。 图1-25 在“对象”下拉列表框中选择Form窗体 在“过程”事件下拉列表框中选择Load事件,在代码窗口 中输入下列代码: Private Sub Form_Load() Label1.Caption = “今天是:“ & Chr(13) & Format(Date, “dddddd“) End Sub 用同样的方法,输入命令按钮Command1和 Command2的单击(Click)事件过程代码: Private Sub Command1_Click() Label1.Caption = “欢迎使用“ & Chr(13) & “Visual Basic“ End Sub Private Sub Command2_Click() Label1.Caption = “现在是北京时间:“ & Format(Time, “ttttt“) End Sub 5. 运行工程 单击工具栏上的“启动”按钮或按F5键,即可运行工 程,显示如图1-26左所示。用鼠标单击“欢迎”按钮,显示 如图1-21左所示,用鼠标单击“时间”按钮,窗体显示如图1 -26右所示。 图1-26 运行工程 单击标题栏上的“关闭”按钮可关闭该窗口结束运行,单 击工具栏上的“结束”按钮也可结束程序运行,返回“窗体设 计器”窗口。 6. 修改工程 修改工程包括修改对象的属性和代码,也可以添加新的 对象和代码,直到满足工程设计的需要为止。在本例的窗 体中,给命令按钮增加图片,使之图文并茂,如图1-27所 示。 图1-27 图文并茂的按钮 修改方法为:选中“欢迎”按钮Command1,修改其风格 属性(Style)为1 Graphical。用鼠标单击图片属性( Picture)右边的三点按钮,打开“加载图形”对话框。在 VB的系统目录中找到图标文件Handshak.ico,如图1-28 所示。 图1-28 “加载图形”对话框 同样方法修改“时间”按钮Command2,其中图标文件为 : Microsoft Visual StudioCommonGraphicsIconsMiscClock06.ico 7. 保存工程 设计好的应用程序在调试正确以后需要保存工程,即以 文件的方式保存到磁盘上。一般是先将程序写入磁盘,然 后再调试程序;当然,也可先对程序进行调试和运行,再 写入磁盘。保存工程的方法为: 1) 单击“文件”菜单中的“保存工程”或“工程另存为”,如 图1-29左所示。 2) 单击工具栏上的“保存工程”按钮。 如果是从未保存过的新建工程,系统则打开“文件另存为 ”对话框,如图1-29右所示。 在“文件另存为”对话框中,注意保存类型,保存窗体文 件(*.frm)到指定文件夹中。窗体文件存盘后系统会弹出 “工程另存为”对话框,保存类型为“工程文件(*.vbp)”,默 认工程文件名为“工程1.vbp”,保存工程文件到指定文件夹 中。 如果想保存修改以后磁盘上已有的工程文件,直接单击 工具栏上的“保存”按钮,系统不会弹出“另存为”对话框。 8. 工程的编译 当完成工程的全部文件之后,即可将此工程转换成可执 行文件(.exe)编译工程。在VB中对程序(工程)的 编译非常简单,在“文件”菜单中选择“生成工程1.exe”(如 图1-30左)。在打开的“生成工程”对话框选择程序所保存 的文件夹和文件名(如图1-30右),然后单击“确定”按钮 即可生成Windows中的应用程序。 1.4.2 控件的画法 在窗体上添加程序设计所需要的各种控件,是VB可视化 程序设计中界面设计的重要内容。将工具箱中的控件添加 到窗体中的过程称为“画控件”,下面介绍控件的画法。 1. 在窗体上画一个控件 在窗体上画一个控件有两种方法: 第1种方法是用鼠标单击工具箱中的控件按钮,当鼠标指针 变成一个十字指针时,再在窗体的工作区按住鼠标左键拖 动鼠标,即可在窗体上画出对应控件。 第2种方法是双击工具箱中的控件按钮,即可在窗体的中央 画出控件。 2. 控件的缩放和移动 在设计时,“活动”控件的边框上有8个蓝色小方块,通 常称为“当前控件”,如图1-31所示。用鼠标单击控件,可 以使之成为当前控件。 对于选中的控件(即当前控件),可直接使用鼠标拖动 控件到需要的地方来调整控件的位置,利用鼠标指针对准 控件的选中标志(8个小方块)出现双向箭头时,可以改变 控件的大小(即高度和宽度)。 除了上述方法外,还可以在属性
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025版绿色建筑水电暖安装工程承包合同示范文本
- 2025版商场装修工程环境保护合同
- 2025年新型环保商砼运输服务合同范本
- 2025年水电站电工设施维护承包合同
- 2025年度企业法律风险防范与合规管理咨询服务合同
- 2025年法院审理离婚案件离婚协议书撰写指南及样本
- 2025年度信息安全咨询与技术服务合同
- 2025年新材料研发生产基地厂房转让合同范本
- 2025版私人艺术品买卖合同(含艺术品交易后续跟踪与维护服务)
- 2025租房补贴借款合同专业版范文
- 土地法学教学课件电子教案课件
- 小学二年级上册心理健康教案(适合北京教育出版社)
- 2025年时事政治考试题及参考答案(100题)
- 代办报建合同协议书
- 2024有限公司生产安全事故应急预案
- 三级养老护理员职业技能鉴定理论考试题(附答案)
- 特种设备安全管理培训课件
- 单位食堂劳务外包服务投标方案(技术方案)
- 建筑工程施工质量事故应急预案
- 颈椎科普小知识
- 川教版小学英语六年级上册全册教案
评论
0/150
提交评论