270 likes | 508 Views
VB 环境下的应用程序开发. 通过开发一个应用程序使读者了解软件的开发过程,开发语言: Visual BASIC ,开发环境: Windows 系统 1 VB 介绍 Visual BASIC (以下简称 VB )是微软 (Microsoft) 公司推出的 Windows 环境下基于对象的可视化的程序设计语言, 可以用来开发W indows 环境下的各种应用软件,也可用来开发多媒体应用. 1.1 Visual Basic 概述. Visual Basic 利用面向对象的概念巧妙地屏蔽了 Windows 环境下的程序设计的复杂性
E N D
VB环境下的应用程序开发 • 通过开发一个应用程序使读者了解软件的开发过程,开发语言:Visual BASIC,开发环境:Windows系统 1 VB介绍 • Visual BASIC(以下简称VB)是微软(Microsoft)公司推出的 Windows环境下基于对象的可视化的程序设计语言, • 可以用来开发Windows环境下的各种应用软件,也可用来开发多媒体应用
1.1 Visual Basic概述 • Visual Basic 利用面向对象的概念巧妙地屏蔽了Windows环境下的程序设计的复杂性 • Visual Basic基于结构化的BASIC语言和一系列的可视化的窗口设计工具,提供了窗口、菜单、按钮、对话框、消息框、滚动条等Windows程序的标准界面对象,以及一整套可视化设计工具 • Visual Basic是首批采用事件驱动的程序设计机制的程序语言之一 • 从微软公司于1991年推出Visual Basic1.0版到目前为止,已推出6个版本,获得极大成功
1.2 VB程序设计的特点 1. 可视化的界面设计 • 设计者仅需用现有工具在屏幕上进行布局设计,设置对象属性即可,Visual Basic自动产生界面设计代码 2. 基于对象的程序设计思想 • VB已经把程序和数据封装起来成为一个个对象,并为每个对象赋予各种属性,程序设计人员在设计时无需编写对象的创建和描述程序代码,便可直接使用 3. 事件驱动的编程机制 • 每个事件都能驱动一段程序运行,完成相应的工作 4. 方便、易用:结构化的程序结构、更接近于人类的语言和逻辑思维方式、语句简单易懂等
5. 基于构件的程序开发 • 可以使用Visual C++,BC++,Delphi等开发用于VB的专用构件,以扩展VB的应用开发能力,VB构件可以直接加入到VB工具箱中供开发人员使用。 对象的链接与嵌入(OLE) • 利用OLE技术,在VB程序中,可以将其他应用软件作为一个对象嵌入到VB应用程序中,并可以对它赋予各种属性和进行程序。还可把符合OLE标准的Windows应用程序嵌入到VB程序中,实现声音、视像、影像、动画、三维立体、变换几何形状、绘制各种图形图像等多媒体功能
7. 数据库访问功能 • Visual Basic系统本身提供了非常好的数据库管理功能,利用数据库管理窗口,用户可直接创建Access数据库,还可直接编辑和访问其他外部数据库,如FoxPro、dBASE、FoxBase …等。可以通过ODBC建立连接的方式来使用和操纵外部数据库 8. 功能强大的辅助开发工具 • Visual Basic中的Setup Wizard可为用户制作生成规范的带安装的用户盘,使程序设计人员采用VB开发工具设计的应用程序在编译生成EXE可执行文件
1.3 消息和事件驱动 • 所有的Windows应用程序都是基于消息的传递和处理的,每一个Windows程序都要求一个消息循环,应用程序中的每一个窗口都要求有一个消息处理器,用户移动鼠标,Windows系统就产生一条消息告诉相应的应用程序:鼠标已经移动了,移动到了什么地方 • Windows系统是多任务系统,如果一个程序有消息要处理,它就占用CPU处理消息,如果一个程序不再有要处理的消息,系统就询问其他正在运行的程序是否有消息要处理,并把控制权交给要处理消息的应用程序,消息机制,就是所谓的事件驱动
1.4 VB开发环境 Visual Basic基本环境
1. 主(Main)窗口 主窗口:控制VB环境下各种工作模式及操作命令 工具条
2. 窗体(Form)窗口 3. 工具箱窗口
4. 项目(Project)窗口 • 标题条: 显示项目(应用程序)名称,控制盒及极小化按钮; • View Form按钮: 查看窗体显示界面; • View Code按钮: 查看代码程序; • 文件列表: 该项目中包含的所有文件清单
代码(Code)窗口 • 对话框: 存储并显示 当前被选中 窗体及其中 所有控制的 名称。其中[general] 表示与特定对象无关的通用代码 • 过程框: 下拉列表框,存储并显示各种事件名称或用户自定义过程及函数名称。 • 源程序代码框: 以Sub过程名开始,End Sub结束。
1.6 创建VB应用程序的步骤 1.创建用户界面:使用 “New Project”项,创建一新工程文件,之后再通过在窗体上画对象来创建一界面 2. 设置界面对象的属性:既可以在设计时用属性窗口设置初始值,也可以在运行时用代码修改属性 3. 编写事件代码:在为窗体和对各对象设置初始属性之后,应增加响应事件时所要执行的代码 4. 保存项目 5. 测试和调试应用程序 创建可执行文件:File->Make EXE File 创建 7. 创建安装应用程序:应用Setup Wizard创建安装程序
2 应用程序举例 2.1 问题的描述 目标:设计一个学生的学习成绩管理系统,教师采用的是统一的数据文件格式,见表4 • 学习成绩管理系统自动将所有必修课的成绩数据文件读入,并将成绩存放到对应学生的学生考试成绩表中,见表5 • 最后,可算出每个学生本学期的必修成绩的实得学分,并可按照要求显示该成绩表,按实得学分排队,查询某个学生的成绩,打印名次排列表,打印需补考的学生姓名及补考课目
下面是《军事理论》课考试成绩的数据文件(假设《军事理论》的学分是3分)。下面是《军事理论》课考试成绩的数据文件(假设《军事理论》的学分是3分)。 军事理论,3 1 吕 国 78 2 方 研 90 3 唐 飞 83 4 徐 双 73 … … 21 方笑林 70 22 李分明 96 23 宋明华 69 24 林 琳 84 • 必修课程学分加权办法是:90以上学分乘1.5,80~89分学分乘1.3,70~79分学分乘1.1。 • 学生考试成绩表的栏数由必修课的课程数决定,课程数可事先由管理员输入。 • 每个学生占有定长的记录。
2.2 问题分析 • 接下来的问题是要处理的对象有哪些? • 需处理哪些数据、数据的流动、数据需做何处理?
2.3 设计过程 • 设计过程要解决的是“如何做”的问题 1. 系统设计 • 系统设计实际上是应用程序的软硬件系统的设计。所运行的环境以及用什么软件来开发它;在这样一个运行环境和软件开发环境中,要选择的计算机硬件平台 • “ 学生成绩管理系统”,要求比较简单。相应的最低硬件配置为:486/586计算机、8M或以上的内存、540M或以上的硬盘、带键盘鼠标的普通PC机 • 软件运行环境为:Windows 95或Windows 98中文版;软件开发环境为:Visual Basic 2. 结构设计
2. 结构设计 • 结构设计就是弄清楚将要开发的软件的功能结构 • 在设计结构时,我们应当在切实贯彻结构化程序设计方法中所说的模块化分解与功能抽象、自顶向下分而治之的思想。把一个复杂的大系统分为若干个相对简单的子系统,各个子系统(模块)完成某一部分功能,最后,通过子系统之间的相互联系实现整个系统的功能
3. 数据设计-建立各种实现系统功能所需的数据结构 • 考试成绩表是一 二维表,可将一个 学生的记录视为数 组中的一个元素, 学生的个数就是 数组的维数 • 考虑到每个班 学生的个数不同 可将数组声明为 动态数组
4. 算法的设计 • 在确定了各种数据结构后,要确定实现系统功能的各种算法 • 就这个问题来说,算法设计主要是实现各个功能模块的功能 • “读入数据”首先从数据文件中读入本门课的课程名和学分,将课程名放入课程名数组,并且将学分保存在一个变量中,然后一个记录一个记录地读入,将学号、姓名和成绩依次填入相应的学生成绩数组元素的学号域、姓名域、课程成绩域里,同时作“学分加权计算”(学分×加权系数),填入到课程学分域中 • 依次将各个数据文件中的数据处理完后,就可得到课程表数组和学生成绩数组中的数据。有了上述信息,便可以进行“实得学分统计” • 完成排序,按学号索引的找到学生的姓名及课程分数情况,即可打印名次
5. 界面设计 • 在VB中,每个界面对应一个窗体,一个程序根据实际需要可以有多个界面,也就有多个窗体。
2.4 程序的编制 1. 创建窗体 2. 菜单选项的创建 3. 设置属性
4. 编写代码 • 只需要对相应的对象(如:文本框、控制按钮等)编写相应的事件过程。这些过程都由相应的事件来激活 • 在“学生成绩管理系统”中,有多个对象。对于命令按钮,主要处理其单击事件(Click);文本框中处理其输入焦点改变事件(GetFocus);文件列表框处理其单击事件(Click) • 窗体一中对象的处理放在Form1.frm代码中,窗体二中的对象的处理放在Form2.frm中,一些全局的变量、结构定义以及公共函数和过程放在代码模块Module1.bas中
2.5 除错与调试 • 在程序的编写过程中,出现错误是必然的,解决这些问题,是程序调试的任务