VB程序设计第3版第5章ppt
合集下载
VB教学课件共345页(徐玉斌)

6.提供创建强Βιβλιοθήκη 的Internet应用程序工具• Visual Basic 提供很多方法用于创建Internet应用 程序。使用Visual Basic新的Internet编程特征, 可以利用Visual Basic提供的工具创建动态的、功 能强大的Internet应用程序。 • 您可以创建运行在客户端或服务器端的应用程序, 在基于窗体的应用程序中使用HTML页面,或在 Web上使用ActiveX部件。 • 此外,您还可以方便迅速地将应用程序发布到 Internet上。
如何学好本门课程
• • • • 掌握好基本概念和编程方法 上机和课下练习 善于查阅资料和利用互连网资源 参考资料 《程序员指南》 《部件工具指南》 《数据访问指南》
第二章 VB简单的程序设计(3学时)
2.1 程序设计方法的发展 2.2 VB中的有关概念 2.3 建立简单的应用程序 2.4 基本控件和属性 2.5 工程的管理及环境的设置 2.6 生成可执行文件和制作安装盘 2.7 程序调试 2.8 常见错误
“专业版”为专业编程人员提供了一整套进行开发的功 能完备的工具,该版本包括了学习版的全部功能。
“企业版”使得专业编程人员能够开发出功能强大的分 布式、高性能的客户/服务器或Internet/Intranet应用程 序,该版本包括了企业版的全部功能。
Visual(可视化)
Visual的英文含义就是可视化,“可视的Baisc” 这个名字可能抽象了点,但实际上它却是最直观的 编程方法,之所以叫做“可视化”,你只要看到VB 的界面就会明白,实际上你无需编程,就可以完成 许多步骤。 在VB中引入了控件的概念,在Windows中控件的 身影无处不在,如按钮、文本框等,VB把这些控件 模式化,并且每个控件都有若干属性用来控制控件 的外观,工作方法。 这样你就可以象在画板上一样,随意点几下鼠 标,一个按钮就完成了,这些在以前的编程语言下 是要经过相当复杂的工作的。
vb第5章

件 Else
MsgBox "请先在列表中选择某字段", , "注意"
End If
End Sub
17
(2) 将右列表框中选择的字段移动到左列表框中。
Private Sub Command2_Click()
If List2.ListCount = 0 Then
第 五
MsgBox "列表中已没有可选的字段", , "注意"
Visual BASIC
第5章
常用控件
本章要点:
• 选项按钮、复选框
程
• 列表框、组合框
序 设
• 计时器、滚动条、框架
计
1
5.1 控件的公共属性
1. Name属性
(1) 运行时是只读的
第 (2) 缺省名称
五 章
(3) 以字母开始,最长40个字符,可包括字母、数字
和下划线,不能包括标点符号或空格(允许汉字)
常 End Sub
用 内
Private Sub Check3_Click()
部 Text1.FontStrikethru = Check3.Value
控 End Sub 件
Private Sub Check4_Click()
Text1.FontUnderline = Check4.Value
End Sub
第
五
章 List1
List2
常
用
内
部
控 件
将左列表框中选择的书名移动到右列表框中
将右列表框中选择的书名移动到左列表框中
将左列表框中的所有书名移动到右列表框中
将右列表框中的所有书名移动到左列表框中
VB第5章 数组、结构与集合

其中的“变量名”表示一个用于依次存放各数组元素的变量, 其类型必须与数组元素的类型一致。在需要遍历所有数组元素时, 特别是在数组长度不易确定的环境中,使用这种For Each…Next语 句就很方便。
5.1 数组
5.1.1 声明和访问数组 3. 多维数组 下标数量大于等于2的数组称为“多维数组”。在多维数组中, 比较常用的是二维数组,其数据组织形式与常见的二维表格十分相 似。声明二维数组与声明一维数组的语法格式类似,例如: Dim ary1(3, 4) As Integer '声明一个4行5列的数组 '声明一个两索引最大值不确定的二维数组 Dim ary2(,) As Integer
第5章 数组、结构与集合
本章讲述的主要内容
5.1 数组数组
在现实生活中有着各种各样的数据,这些数据在所讨论的问 题中可分为两类:一类是仅与其取值有关,而与其所在的位置无 关;更常见的另一类是不仅与其取值有关,并且与其所在的位置 也密切相关,如二维表格中的数据与其所在行列坐标有着密切的 关系。 前面我们所讲过的变量都是简单变量,利用简单变量可以解 决不少问题,但是如果在程序设计中仅使用简单变量,势必受到 简单变量单独性和无序性的限制,而难于或无力解决那些数据不 仅与取值有关,而且与其所在位置也有关的较复杂的问题,如学 生成绩就隐含着名次和成绩。要想方便地解决这些问题,通常需 要借助于复杂数据类型即数组。数组是一些具有相同类型的数据 按一定顺序组成的序列,数组中的每一个数据都可以通过数组名 及唯一索引号(下标)来存取。
声明多维数组时,用逗号表示维数,一个逗号表示二维数组, 两个逗号表示三维数组,依次类推。
5.1 数组
5.1.2 Array类 Visual Studio提供的Array类中包含了一些适用于数组常用操 作的方法,使用这些方法能完成数组清零、复制、排序、反转等常 用操作。Array类的常用方法见表5-2。
VB程序设计第五章 数组

5. 求数组中最大元素和所在下标及各元素之和
方法:先假设第一个元素及下标为所求结 果,然后依次比较。 利用循环结构进行
Dim Max As Integer, iMax As Integer, sum As Integer Max=iA(1):iMax=1: sum=iA(1) For i = 2 To 10 sum = sum + iA(i) If iA(i) > Max Then Max = iA(i) iMax = i End If 求最小值同样方法进行 Next i
(a) 利用Array()函数,可以直接给数组赋值; (b) 数组的声明必须是动态数组或者省略圆 括号,且其类型必须为 Variant (c) 数组的下界默认为0,也可以通过 Option Base 语句确定 (d) 上界由 Array() 函数括号内参数个数确定, 或者由 UBound() 函数确定。
赋值时注意: (1) 赋值号两边的上界类型必须一致 (2) 如果赋值号左边是一个动态数组,则赋值后数组 大小与右边一致。 (3) 如果左边是静态数组,则数组赋值出错!
4. 数组的输出
数组的输出,采用循环输出即可 例:输出方阵sC中的下三角元素
For i = 0 To 4
For j = 0 To i sc(i, j) = i * 5 + j Print sc(i, j); " "; Next j Print ' 换行 Next I (参见P93的代码。)
下标可以是整型的常数、变量、表达式, 也可以是又一个数组元素。 数组元素的使用规则和同类型的简单变量 相同。 一般情况下,数组元素类型必须相同。 但当数组类型定义为 “variant” 时,可以包 含不同类型的元素。
vb最全最经典课件(免费)

在中,将反映对象的属性和行为封装 在一起,是面向对象编程的基本元素。
本章目录
2.类的概念
类 同种对象的集合与抽象,是创建对象实例的 模板,包含所创建对象的属性描述和行为特征的 定义。 例如,人类是具体人的抽象。每个人有不同的身 高、体重等属性值和不同的行为。 工具箱中的可视图标是系统设 计好的标准控件类。通过将控件类实例化,得到 真正的控件对象。在窗体上画一个控件,就将类 转换为对象,创建了一个控件对象(简称控件)。
本章目录
2.2 建立简单的应用程序
例2.2 编写一个人民币与美圆兑换的程序。 建立一个应用程序分为以下几步进行: (1) 建立用户界面的对象 (2) 对象属性的设置 (3) 对象事件过程及编程 (4) 保存和运行程序
代码说明
本章目录
对象事件过程及编程
代码窗口的对象列表框可显示窗体所有对象 过程列表框列出所选中对象的所有事件 例如,在按钮Button2的Click事件加入代码:
1.1 概述 1.2 集成开发环境 1.3 使用帮助系统
本章目录
1.1 概述
1.1.1 Visual Basic的发展 20世纪60年出现Basic语言; 20世纪80年代,True Basic、Quick Basic和 Turbo Basic等; 1991年Microsoft公司推出Visual Basic1.0,以 可视化工具为界面设计、结构化Basic语言为基 础,以事件驱动为运行机制。从1991年的VB1.0 至1998年的V B6.0的多次版本升级,功能更强 大、完善,应用面更广; 2002年正式发布Visual 。
本章目录
事件过程
事件过程 应用程序处理事件的步骤 它针对某一对象并与该对象的一个事件相联系 应用程序设计的主要工作就是为对象编写事件过 程的代码。事件过程的形式如下:
第五章vb计算机

2013年7月17日星期三
Visual Basic程序设计
5.2 数组的基本操作
1. 数组赋初值 (1)用循环 For i = 1 To 10 A(i)=i+3 Next i (2) Array函数(只能是一维变体数组) Dim b As Variant b = Array("abc", "def", "67") For i = 0 To UBound(b) Print b(i); " "; Next i
2013年7月17日星期三
Visual Basic程序设计
5.求数组和、最值、位置 例5.4 求一维数组中各元素之和、最小数组元素,并 将最小值数组元素与数组中第一个元素交换。
求元素和:通过循环将每个元素进行累加。
求数组中最小元素:假设第一个元素为最小,然后 将该数与其他元素逐一比较,若发现小于最小值, 就用新值替换最小值,同时记录下标值。 求最大值的方法与求最小值相似。
2013年7月17日星期三
Visual Basic程序设计
5.1.3 动态数组及声明
动态数组指在声明数组时未给出数组的大小(省略括号中的下标),当要使 用它时,随时用ReDim语句重新指出数组大小。 建立动态数组要分两步: (1)用Dim 语句声明数组,但不能指定数组大小 Dim 数组名( ) As 数据类型 (2)用ReDim语句动态地分配元素个数 ReDim 数组名 (下标[,下标2…]) 例:Dim s ( ) As Single Sub Form_Load( ) … ReDim s(4,8) … End Sub
5.1.2 静态数组及声明
在声明时确定了大小的数组称为静态数组。静态数组从建立到消亡 整个阶段中数组的大小是固定的。 静态数组的声明形式: Dim 数组名(下标1[,下标2…]) [As 类型] 声明了数组的名、维数、大小、类型(省略时为变体类型) 维数:几个下标为几维数组,最多60维。 下标:[下界 To ] 上界 省略下界为0,必须为常数。 每一维大小:上界-下界+1 数组大小: 每一维大小的乘积 例:Dim mark(1 to 100) As Integer
VB程序设计课件(全套)

在VB中,将反映对象的属性和行为封装在一起,是面向对 象编程的基本元素。
21
上一页
下一页
2.类的概念
本章目录
类是创建对象实例的模板,是同种对象的集合与抽象,它包 含所创建对象的属性描述和行为特征的定义。 例如,人类是人的抽象,一个个不同的人是人类的实例。各 个人具有不同的身高、体重等属性值和不同的行为。 在 VB中,工具箱上的可视图标是 VB系统设计好的标准控件 类。通过将控件类实例化,可以得到真正的控件对象,也就是 当在窗体上画一个控件时,就将类转换为对象,即创建了一个 控件对象,简称为控件。
25
上一页
下一页
事件
本章目录
2. 事件、事件过程和事件驱动 (1) 事件 事件就是发生在对象上的事情。同一事件,作用于不同的对 象,就会引发不同的反应,产生不同的结果。 例如,在学校,教室楼的铃声是一个事件,教师听到铃声就 要准备开始讲课,向学生传授知识;学生听到铃声,就要准备 听教师上课,接受知识;而行政人员对铃声可不于响应。 在VB中,系统为每个对象预先定义好了一系列的事件。 例如,单击 (Click) 、双击 (DblClick) 、改变 (Change) 、获 取焦点(GotFocus)、键盘按下(KeyPress)等。
9
上一页
下一页
VB功能特点
2 功能特点 1) 具有面向对象的可视化设计工具 2) 事件驱动的编程机制 3) 提供了易学易用的应用程序集成开发环境 4) 结构化的程序设计语言 5) 强大的数据库功能 6) Active技术 7) 网络功能 8) 多个应用程序向导 9) 完备的Help联机帮助功能
10
Visual Basic 程序设计简明教程
第一章 Visual Basic程序设计概述(2) 第二章 VB简单的程序设计(6) 第三章 VB语言基础(4) 第四章 基本的控制结构(8) 第五章 数组(5) 第六章 过程(4) 第七章 常用控件(2) 第八章 界面设计(2) 第九章 文件(2) 第十章 图形(1) 第十一章 数据库技术(自学) 第十二章 系统开发案例 (自学)
visual basic (vb)第5章_2(循环语句)解析

Visual Basic 程序设计
1 为什么要使用循环结构? 使用循环结构,上述程序可以修改为: Private Sub Form_Click() For I = 1 To 6 Print "**********" Next I End Sub 与前面的程序相比,循环结构使得程序更加 清晰,功能更加强大,修改也更加方便。
VB 程序设计基础课件 Visual Basic 程序设计
例题3 计算S=1!+2!+……+20!
Private Dim Dim S = For Sub Form_Click() S As Single, temp As Single I As Integer, J As Integer 0 I = 1 To 20 temp = 1 For J = 1 To I temp = temp * J Next J S = S + temp Next I Print "1!+2!+……20!=", S End Sub
例题5 输出乘法口诀—2
Private Sub form_Click() For I = 1 To 9 For J = 1 To I Print I;"*"; J; "="; I * J; ' 不换行 Next J Print ' 换行 Next I End Sub
Visual Basic 程序设计
例6 输出图形
Visual Basic 程序设计
Private Sub picture1_Click() Picture1.Cls ' 清除图片框 n = Val(InputBox("请输入行数")) For i = 1 To n Picture1.Print Tab(n + 1 - i); ' 控制打印起点 For j = 1 To 2 * i - 1 Picture1.Print "*"; Next j Picture1.Print For j = 1 To n - i Next i Picture1.Print Spc(1); End Sub
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
5.3 多分支选择语句
第 五 章 选 择 结 构 程 序 设 计
1. 格式 Select Case 测试表达式 Case 表达式表 表达式表1 [语句组 语句组1] 语句组 [Case 表达式表 表达式表2 [语句组 语句组2]] 语句组 … [Case Else [语句组 语句组n]] 语句组 End Select
18
本例条件语句可以简化为: 本例条件语句可以简化为:
第 五 章 选 择 结 构 程 序 设 计 If distance < 250 Then Discount = 0 ElseIf distance < 500 Then Discount = 0.02 ElseIf distance < 1000 Then Discount = 0.05 ElseIf distance < 2000 Then Discount = 0.08 ElseIf distance < 3000 Then Discount = 0.1 Else Discount = 0.15 End If 在书写块结构条 件语句时, 件语句时,可以 语句、 将If语句、ElseIf 语句 子句、 子句、Else子句和 子句和 End If语句左对齐, 语句左对齐, 语句左对齐 而各语句组向右 缩进若干空格, 缩进若干空格, 以使程序结构更 加清楚, 加清楚,便于阅 读和查错。 读和查错。
5.1 单行结构条件语句
第 五 章 选 择 结 构 程 序 设 计
语句组1 语句组
1. 格式 If 条件 Then [语句组 [Else 语句组 语句组1] 语句组2] 语句组 2. 功能 如果“条件”成立(True),则执行“语句 如果“条件”成立 ,则执行“ 组1” ” T F 否则执行“语句组 ” 否则执行“语句组2”
19
4. 注意
第 五 章 选 择 结 构 程 序 设 计 1)必须以If语句开头,End If语句结束。 )必须以 语句开头 语句开头, 语句结束。 语句结束 2)ElseIf不能写成 不能写成Else If,即中间不能有空格。 ) 不能写成 ,即中间不能有空格。 3)严格按格式要求书写,不可随意换行或将两行 )严格按格式要求书写, 合并成一行。例如,对于条件结构: 合并成一行。例如,对于条件结构: If x >= 0 Then y=1 Else y=2 End If 以下两种写法都是错误的: 以下两种写法都是错误的: 写法一: 写法二: 写法一: 写法二: If x>=0 Then y=1 If x>=1 Then y=1 Else y = 2 Else y = 2 End If End If 20
13
第 五 章 选 择 结 构 程 序 设 计
【例5-2】某运输公司对用户计算运费,距离 】某运输公司对用户计算运费, 越远,每公里运费越低,计算标准如下 越远,每公里运费越低,计算标准如下: 距离< 距离<250km 250km≤距离<500km 距离< 距离 500km≤距离<1000km 距离< 距离 1000km≤距离<2000km 距离< 距离 2000km≤距离<3000km 距离< 距离 3000km≤距离 距离 没有折扣 2%折扣 折扣 5%折扣 折扣 8%折扣 折扣 10%折扣 折扣 15%折扣 折扣
7
注意: 注意:
第 五 章 选 择 结 构 程 序 设 计
1)应作为一条语句书写。如果语句太长需 )应作为一条语句书写。 要换行,必须在折行处使用续行符号。 要换行,必须在折行处使用续行符号。 例: If N>0 Then A=A+B:B=B+A Else _ A=A-B:B=B-A
8
第 五 章 选 择 结 构 程 序 设 计
5
第 五 章 选 择 结 构 程 序 设 计
【例5-1】设界面如下图所示,用文本框输 】设界面如下图所示, 的值, 按钮时, 入x的值,单击“计算Y”按钮时,根据以 的值 单击“计算 按钮时 下公式计算y的值 的值。 下公式计算 的值。 y= |x| x≤0 lnx x>0
Text1 Label3 Command1
IF ... THEN...IF ... THEN ...ELSE ...ELSE…
10
5.2 块结构条件语句
第 五 章 选 择 结 构 程 序 设 计
1.格式 格式 If 条件 Then 条件1 [语句组 语句组1] 语句组 条件2 [ElseIf 条件 Then [语句组 语句组2]] 语句组 …… 条件N [ElseIf 条件 Then [语句组 语句组N]] 语句组 [Else [其他语句组 其他语句组 其他语句组]] End If
特点: 根据条件是否成立, 特点 根据条件是否成立,决定程序的执行分支
1
引言
第 五 章 选 择 结 构 程 序 设 计 Y= lnx x>0 在输入变量x的值之后,需根据 的不同取值范 在输入变量 的值之后,需根据x的不同取值范 的值之后 围做不同的处理, 围做不同的处理,使用顺序结构的程序无法解决 这一问题的。 这一问题的。本章将介绍解决此类问题的语句结 构。 2 |x| x≤0 顺序结构程序的执行次序是按语句的先后排列 次序依次执行的,然而, 次序依次执行的,然而,计算机在处理实际问题 往往需要根据条件是否成立, 时,往往需要根据条件是否成立,决定程序的执 行方向,在不同的条件下,进行不同的处理。 行方向,在不同的条件下,进行不同的处理。假 如遇到这样一个问题: 如遇到这样一个问题:
例:If X<>"aaa" Then Print X
4
3) 语句组 、语句组 可以有多条语句, ) 语句组1、语句组2: 可以有多条语句,
第 五 章 选 择 结 构 程 序 设 计
各语句之间用冒号隔开。 各语句之间用冒号隔开。 例:
If N>0 Then A=A+B:B=B+A Else A=A-B:B=B-A
条件n 条件n
12
3. 说明
第 五 章 选 择 结 构 程 序 设 计
条件:关系表达式、布尔表达式、 条件:关系表达式、布尔表达式、数值 表达式或字符串表达式。 表达式或字符串表达式。 两种常见的简化形式: 两种常见的简化形式 形式一: 形式一: If 条件 Then 语句组1 语句组 Else 语句组2 语句组 End If 形式二: 形式二: If 条件 Then 语句组 End If
第 五 章 选 择 结 构 程 序 设 计
第5章
选择结构程序设计 选择结构程序设计
本章要点: 本章要点 条件语句 单行结构条件语句If...Then...Else ... 单行结构条件语句 块结构条件语句If...Then…EndIf 块结构条件语句 多分支选择语句Select Case...End Select 多分支选择语句 条件语句的嵌套
使用块结构条件语句, 使用块结构条件语句,按以上标准计算运费
14
分析: 分析:
第 五 章 选 择 结 构 程 序 设 计
设每公里每吨货物的基本运费为Price, , 设每公里每吨货物的基本运费为 货物重为Weight, , 货物重为 运输距离为Distance, , 运输距离为 折扣为Discount, , 折扣为 则总运费Freight的计算公式为 的计算公式为: 则总运费 的计算公式为 Freight= Price * Weight * Distance * (1 - Discount)
2)多条单行结构条件语句不要用冒号合并 ) 成一行。例如: 成一行。例如: a = 1 : b = -2 If a > 0 And b > 0 Then y = a + b If a > 0 And b < 0 Then y = a - b Print y 打印出y的值为 的值为3, 打印出 的值为 ,如果把以上两个单行 结构条件语句合并成一行: 结构条件语句合并成一行: If a > 0 And b > 0 Then y = a + b: If a > 0 And b < 0 Then y = a – b 没有被求值。 则y没有被求值。 没有被求值 9
17
第 五 章 选 择 结 构 程 序 设 计
ElseIf distance >= 1000 And distance < 2000 Then Discount = 0.08 ElseIf distance >= 2000 And distance < 3000 Then Discount = 0.1 Else Discount = 0.15 End If ' 计算总运费 Freight=Price*Weight*distance*(1 - Discount) ' 输出总运费 Label4.Caption = Format(Freight, "0.00") End Sub
6
代码如下: 代码如下:
第 五 章 选 择 结 构 程 序 设 计
Private Sub Command1_Click() X = Val(Text1.Text) If X <= 0 Then Y = Abs(X) Else Y = Log(X) Label3.Caption = Y End Sub
15
பைடு நூலகம் 界面设计: 界面设计:
第 五 章 选 择 结 构 程 序 设 计
Text1 Text2 Text3 Label4 Command1
16
代码设计: 代码设计:
第 五 章 选 择 结 构 程 序 设 计 Private Sub Command1_Click() Price = Val(Text1.Text) ' 输入基本运费 Weight = Val(Text2.Text) ' 输入货物重量 distance = Val(Text3.Text) ' 输入运输距离 ' 根据不同的运输距离 根据不同的运输距离distance计算折扣 计算折扣 If distance < 250 Then Discount = 0 ElseIf distance >= 250 And distance < 500 Then Discount = 0.02 ElseIf distance >= 500 And distance < 1000 Then Discount = 0.05