Visual Basic 程序设计教程 机械工业出版社同名教材 配套电子教案 2003 年 6月.

Slides:



Advertisements
Similar presentations
Visual Basic 程序设计 第四讲.
Advertisements

第2章 Visual Basic 6.0编程基础 (第一部分)
第 1 章 公共基础知识 第 2 章 Visual Basic程序开发环境 第 3 章 对象及其操作 第 4 章 数据类型及其运算
第二章 VB的编程机制 【授课时间】第3周,第2次课 【授课题目】 2.1 面向对象程序设计概述 2.2 VB中的对象
第10章 处理图形 Visual Basic 程序设计教程.
課程名稱:程式設計 授課老師:________
第四章 控制结构.
赋值语句与输入、输出语句.
程式語言(I)- Visual Basic 6.0 第 9 章 結構化程式設計
高中信息技术新课程探讨 算法与程序设计教学实践与探讨 江苏省新海高级中学  张丽.
Access数据库程序设计 总复习.
1.了解VB6.0的功能特点 、集成环境。 2.理解面向对象程序设计的几个概念。 3.掌握VB应用程序设计的步骤。
网 络 课 程 马 鞍 学 网 络 山 课 程 大 络 网 Visual Basic程序设计 第 一 讲 最容易接受的编程语言
新觀念的 VB6 教本 第 3 章表單設計.
Visual Basic程序设计.
程式語言Visual Basic 變數的可視範圍
VB內建函數與應用.
Visual Basic快速入门 ADO数据控件与数据绑定控件 VB数据库编程举例 VB开发数据库应用系统实例分析
Visual Basic 2010 程式設計16堂特訓 第七堂 VB的迴圈流程控制.
課程名稱:程式設計 授課老師:________
第6章 数 组 6.1 一维数组 6.2 控件数组 6.3 二维数组.
数组 第 6 章.
第5章 数组 Visual Basic程序设计.
Visual Basic 程式設計基礎(一)
程式語言 -Visual Basic 變數、常數與資料型態.
新觀念的 VB6 教本 第13章 表單的圖形輸出系統.
副程式 將可以重複使用的程式區塊獨立而成 寫在Private Sub 函數名稱() 副程式碼 End Sub 呼叫副程式
过程 第 7 章.
初识Visual Basic.
第一章 VB概述 本章重点和难点 1.1 VB 概述 1.2 面向对象的程序设计方法基础
Visual Basic程序设计基础 计算机科学学院.
第1章 概述 程序设计语言的发展 Visual Basic 6.0简介 Visual Basic 6.0集成开发环境 设计程序的一般步骤.
第4章 程序控制结构与算法基础.
計算機程式 廖文淵 Department of Computer Science and Engineering
新觀念的 VB6 教本 第七章 讓程式轉彎的控制敘述.
Visual Basic 程序设计教程 机械工业出版社同名教材 配套电子教案 2003 年 6月.
第4章 基本的控制结构 4.1 顺序结构 4.2 选择结构程序设计 4.3 循环结构 4.4 综合实例 退出.
流程控制、陣列 台南市聖功女子高級中學 毛全良.
Visual Basic 程序设计 教师:王 杨 电话:
程式設計 Visual Basic簡介 週次:1 建國技術學院 資管系 饒瑞佶 2003年9月17日.
新觀念的 VB6 教本 第 6 章 資料型別.
第5章 Visual Basic控制结构 之 常用算法举例
广州市教育局教学研究室编写的 初中《信息技术》第二册第二章 《程序设计初步》
第四章 命令按钮、标签和文本框 大多数应用程序中都有命令按钮CommandButton控件,用户可以单击按钮执行某项操作。
Visual Basic程序设计.
第二章 创建用户界面 本章重点和难点 2.1 基本属性 2.2 创建窗体 2.3 Visual Basic的常用控件 2.4 制作菜单.
講師:戴志華 國立台灣大學電機工程研究所 Visual Basic 程式設計 講師:戴志華 國立台灣大學電機工程研究所.
算法与程序设计 周少品.
VB程序设计语言 主讲教师:王 杨.
VB程序设计语言 主讲教师:王 杨.
程式設計 Visual Basic簡介 週次:2 建國技術學院 資管系 饒瑞佶 2003年9月17日.
程序设计基础 第 2 章 学习程序设计的基本方法: 多练 模仿.
For x = 0 To 9 For y = 0 To 9 z = *x + 10*y …… Next y
第五章: 輸入與輸出.
VB语言程序设计教程.
107學年度高一程式設計 上機考試 投影片 加減乘除.
程序基础 2019/4/25.
第二章、第三章错题分析.
Visual Basic 程序设计及应用教程 (6.0版)
选择结构设计 第 4 章 程序流程有三种最基本的控制结构,即顺序结构、选择结构和循环结构。
第五讲 VB语言基础(3).
计算机应用基础 潍坊学院 计算机工程学院 主讲人:丁素英.
1位选手参加了歌唱比赛,评委们的评分如下:
第5章 数组 5.1 数组概述 5.2 静态数组和动态数组 5.3 数组的基本操作 5.4 控件数组 5.5 数组在自定义数据类型中的应用.
程式設計 Visual Basic簡介 週次:4 建國技術學院 資管系 饒瑞佶 2003年11月1日.
解析算法与枚举算法.
算法与Visual Basic程序基础(二)
信息的加工 Word中查找和替换、自动更正、批注、修订 Excel中公式和函数、排序和筛选、图表的建立和编辑 字符识别OCR.
VB语言基础 一、 常量 1 定义:在程序运行过程中不能发生改变的量 2 分类 整型常量: 整数 不带小数点的数 数值常量
程序调试与错误处理.
Presentation transcript:

Visual Basic 程序设计教程 机械工业出版社同名教材 配套电子教案 2003 年 6月

第3章 顺序结构程序设计 1 数据输出 1.直接输出到窗体 使用Print方法 : 其语法格式为 第3章 顺序结构程序设计 1 数据输出 1.直接输出到窗体 使用Print方法 : 其语法格式为 [〈对象名称〉.] Print [〈表达式列表〉] [{, | ;}] 【例3-1】使用Print方法在窗体中直接输出字符串或数值表达式的值,如图3-1所示。 设计步骤如下。 (1) 建立应用程序用户界面。 选择“新建”工程,进入到窗体设计器,并在窗体中增加一个命令按钮Command1,如图3-2所示。 (2) 设置对象属性,见表3-1。

图3-1 使用Print方法 图3-2 建立程序界面 表3-1 属性设置 对 象 属 性 属性值 说 明 Command1 Caption 表3-1 属性设置 对 象 属 性 属性值 说 明 Command1 Caption 欢迎 按钮的标题

(3) 设计代码 编写命令按钮Command1的Click事件代码: Private Sub Command1_Click() Print Print "2 * 3 + 4 ="; 2 * 3 + 4 ' 使用“;”分割符 Print "欢迎学习" Print , "Visual" ' 使用“,”分割符 Print , , "Baisc" ' 使用两个“,”分割符 Print " 欢迎学习", ' 在行末使用“,”分割符 Print "Visual"; " Baisc“ End Sub

2.与Print方法有关的函数 Tab函数 其格式为:Tab(〈n〉) 例如:Print Tab(10);"姓名";Tab(30);"年龄" (2) Spc函数。 其格式为:Spc(〈n〉) 例如:Print "ABC";Spc(5);"DEF" ' 输出:ABC DFE

【例3-2】在上例中使用Tab函数与Spc函数。 只需改写命令按钮的Click事件代码: Private Sub Command1_Click() Print Print Tab(5); "2 * 3 + 4 ="; 2 * 3 + 4 Print Tab(6); "欢迎学习"; Tab(17); "Visual Baisc" Print Tab(7); "欢迎学习"; Spc(3); "Visual"; Spc(2); "Baisc" End Sub

3.使用位置属性 【例3-3】下面程序按指定尺寸、颜色和外观,把文本输出到窗体的中间。 设计步骤如下: (1) 建立应用程序用户界面与对象属性的设置参见例3-1。 (2) 编写命令按钮的Click事件代码: Private Sub Command1_Click() Dim a As String, textW As Integer, textH As Integer FontName = "隶书" ' 输出文本的字体 FontSize = 60 ' 输出字体的大小

ForeColor = QBColor(15) ' 输出文本的前景色,即字体的颜色 BackColor = QBColor(8) ' 输出文本的背景色,即窗体的颜色 a = "你好" ' 输出文本的内容 textW = TextWidth(a) / 2 ' 文本的宽度TextWidth(a) textH = TextHeight(a) – Command1.Height / 2 CurrentX = ScaleWidth / 2 – textW ' 设置输出的水平位置 CurrentY = ScaleHeight / 2 – textH ' 设置输出的垂直位置 Print a ' 输出文本 End Sub

4. 清除方法CLS 【例3-4】在上例中使用Cls方法清除窗体中由Print方法所生成的文本,如图3-5所 只需在上例中增加命令按钮Command2(清除),并且编写其Click事件代码: Private Sub Command2_Click() Cls End Sub

【例3-5】使用Print方法在图片框中输出字符串或数值表达式的值。 设计步骤如下: 输出文本到图片框 【例3-5】使用Print方法在图片框中输出字符串或数值表达式的值。 设计步骤如下: (1) 建立应用程序用户界面。选择“新建”工程,进入窗体设计器,在窗体中增加一个图片框Picture1和一个命令按钮Command1。 (2) 设置对象属性 对 象 属 性 属性值 说 明 Picture1 BackColor (白色) 图片框的背景色 Command1 Caption 欢迎 按钮的标题

(3) 设计代码。 编写命令按钮Command1的Click事件代码: Private Sub Command1_Click() Picture1.Print Picture1.Print Tab(2); "2 * 3 + 4 ="; 2 * 3 + 4 Picture1.Print Tab(3); "欢迎学习"; Tab(17); "Visual Baisc" Picture1.Print Tab(4); "欢迎学习"; Spc(3); "Visual"; Spc(2); "Baisc" End Sub

【例3-6】在图片框中使用位置函数。 设计步骤如下。 (1) 建立应用程序用户界面与对象属性 (2) 编写命令按钮的Click事件代码: Private Sub Command1_Click() Dim a As String, textW As Integer, textH As Integer Picture1.FontName = "隶书" Picture1.FontSize = 40 Picture1.ForeColor = QBColor(15) Picture1.BackColor = QBColor(8)

a = "你好" textW = Picture1.TextWidth(a) / 2 ' 文本的宽度TextWidth(a) textH = Picture1.TextHeight(a) / 2 Picture1.CurrentX = Picture1.Width / 2 – textW ' 窗体的宽度属性ScaleWidth Picture1.CurrentY = Picture1.Height / 2 – textH ' 设置垂直位置为从顶部往下50twips Picture1.Print a End Sub

3. 使用“标签”控件的输出 【例3-7】有框和无框的标签 设计步骤如下。 (1) 建立应用程序用户界面。选择“新建”工程,进入窗体设计器,增加一个命令按钮Command1、两个标签Label1和Label2。如图3-9左。 (2) 设置对象属性,见表3-3。如图3-9右。 (3) 编写程序代码。 编写命令按钮Command1的单击(Click)事件代码: Private Sub Command1_Click() Label1.Caption = "运行时改变标签的标题" End Sub

图3-9 建立界面与设置属性 表3-3 属性设置 对象 属性 属性值 说明 Label2 &H800000 Command1 Label1   图3-9 建立界面与设置属性 表3-3 属性设置 对象 属性 属性值 说明 Command1 Caption 改变(&G) 按钮的标题 Label1 设计时设置的标签内容 标签的内容 Alignment 2 – Center 标签的内容居中显示 Label2   BorderStyle 1– Fixed Single 有边框的标签 BackColor &H800000 标签的背景改为白色

【例3-8】在上例中修改标签的属性,使之自动改变尺寸以适应其内容 只需在上例中修改Label2的属性设置,并且修改Command1的Click事件代码: Private Sub Command1_Click() Label1.Caption = "运行时改变标签的标题" Label2.Caption = " 对于一个较长的或在运行时可能变化的标题,标签控件提供了两" & _ "种属性:AutoSize和WordWrap来改变控件尺寸以适应较长或较短的标题。" End Sub

2 基本语句 赋值语句LET 赋值语句的一般格式为:[Let]〈名称〉=〈表达式〉 【例3-9】交换两个变量中的数据。 设计步骤如下: 建立应用程序用户界面。选择“新建”工程,进入窗体设计器,增加一个命令按钮Command1、4个标签Label1~Label4。如图3-14左 (2) 设置对象属性, (3) 编写程序代码。 编写命令按钮Command1的Click事件代码: Private Sub Command1_Click() t = Label3.Caption Label3.Caption = Label4.Caption Label4.Caption = t End Sub

2.卸载对象与结束程序 Unload语句 Unload语句的语法格式为:Unload 对象名 【例3-10】在例3-9中使用命令关闭程序窗体。 设计步骤如下: 只需在上例中增加一个命令按钮Command2(关闭),并且编写Command2的Click事件代码: Private Sub Command2_Click() Unload Me End Sub

3. 注释与暂停 注释语句 语法格式为: Rem〈注释内容〉或'〈注释内容 例如:s = pi * r ^ 2 '计算圆的面积 v = 4 / 3 * pi * r ^ 3 : Rem 计算球的体积 2. 暂停语句 其语法格式为:Stop

3 数据输入 1. 使用文本框控件 【例3-11】输入球体的半径,然后计算并输出球体的体积和表面积。 分析:设球的半径为r,球体积和球表面积分别为:v和f,依题义可得计算公式: 、 设计步骤如下: (1) 建立应用程序用户界面。 选择“新建”工程,进入窗体设计器,增加两个命令按钮Command1~Command2、3个标签Label1~Label3和3个文本框Text1~Text3。

编写程序代码。 编写命令按钮Command1的Click事件代码: Private Sub Command1_Click() Dim r As Single, v As Single, f As Single Const pi = 3.14159 r = Val(Text1.Text) v = 4 / 3 * pi * r ^ 3 : f = 4 * pi * r ^ 2 Text2.Text = v : Text3.Text = f End Sub 编写命令按钮Command2的Click事件代码: Private Sub Command2_Click() Unload Me

【例3-12】设某职工应发工资x元,试求 各种票额钞票总张数最少的付款方案。 分析:可以从最大的票额(100元)开 始,算出所需的张数,然后在剩下的部分 算出较小票额的张数,直到最小票额(1 元)。 设计步骤如下: (1) 建立应用程序用户界面。 选择“新建”工程,进入窗体设计器, 增加一个命令按钮Command1、14个标签 Label1~Label14、7个文本框Text1~Text7。 (2) 设置对象属性。

编写程序代码。 编写命令按钮Command1的Click事件代码: Private Sub Command1_Click() x = Val(Text1.Text) ' x为实发工资数 y = x \ 100 : Text2.Text = y ' 求百元票张数并显示 x = x – 100 * y ' 求剩余款项 y = x \ 50 : Text3.Text = y ' 求五十元票张数并显示 x = x – 50 * y ' 求剩余款项 y = x \ 10 : Text4.Text = y ' 求十元票张数并显示 x = x – 10 * y ' 求剩余款项 y = x \ 5 : Text5.Text = y ' 求五元票张数并显示

x = x – 5 * y ' 求剩余款项 y = x \ 2 : Text6.Text = y ' 求二元票张数并显示 x = x – 2 * y : Text7.Text = x ' 求一元票张数并显示 End Sub 编写文本框Text1的Change事件代码: Private Sub Text1_Change() Text2.Text = "" Text3.Text = "" Text4.Text = "" Text5.Text = "" Text6.Text = "" Text7.Text = "“

使用焦点 在程序运行的时候,用户可以按下列方法改变焦点: l         用鼠标单击对象。 l         按Tab键或〈Shift〉+〈Tab〉在当前窗体的各对象之间巡回移动焦点。 按热键选择对象。

使用对话框 4 1.显示信息——信息对话框(MsgBox) 【例3-14】使用信息对话框输出各种票额钞票张数的付款方案 只需将例3-12的窗体中多余的文本框和标签删去,并改写命令按钮的Click事件代码 Private Sub Command1_Click() x = val(Text1.Text) ' x为实发工资数 Y1 = x \ 100 ' 求百元票张数 x = x Mod 100 ' 求剩余款项 Y2 = x \ 50 ' 求五十元票张数

x = x Mod 50 ' 求剩余款项 Y3 = x \ 10 ' 求十元票张数 x = x Mod 10 ' 求剩余款项 Y4 = x \ 5 ' 求五元票张数 x = x Mod 5 ' 求剩余款项 Y5 = x \ 2 ' 求二元票张数 x = x Mod 2 ' 求一元票张数

Text1.SetFocus a = "===========================" & Chr(13) a = a & Format(Y1 & "张 百元票,", "@@@@@@@@@@") & _ Format(Y2 & "张 50元票", "@@@@@@@@@@") & Chr(13) a = a & Format(Y3 & "张 10元票,", "@@@@@@@@@@@") & _ Format(Y4 & "张 5元票", "@@@@@@@@@@") & Chr(13) a = a & Format(Y5 & "张 2元票,", "@@@@@@@@@@@") & _ Format(x & "张 1元票", "@@@@@@@@@@") & Chr(13) a = a & "===========================" & Chr(13) a = a & "共计" & Text1.Text & "元" c = MsgBox(a, 0, "应发工资") End Sub

2.输入数据——输入框(InputBox) 其语法格式为: 变量 = InputBox(〈信息内容〉[,〈对话框标题〉][,〈默认内容〉]) 【例3-15】编制华氏温度和摄氏温度相互转换的程序。利用输入框输入温度. 设计步骤如下: (1) 建立应用程序用户界面与设置对象属性。 选择“新建”工程,进入窗体设计器,增加两个命令按钮Command1~Command2和一个标签Label1。其属性的设置参见图3-26

图3-26 温度的转换

(2) 编写事件代码。 编写“摄氏转华氏”命令按钮Command1的Click事件代码: Private Sub Command1_Click() c = Val(InputBox("请输入摄氏温度值:", "摄氏转华氏", 0)) f = 32 + 9 * c / 5 Label1.Caption = "摄氏" & c & "度 = 华氏" & Format(f, "####.##") & "度" End Sub

编写“华氏转摄氏”命令按钮Command2的 Click事件代码: Private Sub Command2_Click() f = Val(InputBox("请输入华氏温度值:", "华 氏转摄氏", 0)) c = 5 * (f – 32) / 9 Label1.Caption = "华氏" & f & "度 = 摄氏" & Format(c, "####.##") & "度" End Sub

【例3-16】“鸡兔同笼”问题。鸡有2只脚,兔有4只脚,如果已知鸡和兔的总头数为h,总脚数为f。问笼中鸡和兔各有多少只?如图3-27所示。 图3-27 “鸡兔同笼”问题

分析:设笼中有鸡x只,兔y只,由条件可 得方程组{x+y=h 解方程组得 设计步骤如下: (1) 建立程序界面与设置对象属性。 选择“新建”工程,进入窗体设计器, 首先增加3个标签Label1~label3和一个命 令按钮Command1。其属性设置参见图3- 27。

(2) 编写程序代码。 编写命令按钮Command1的Click事件代码: Private Sub Command1_Click() Dim h As Integer, f As Integer h = Val(InputBox("鸡和兔的总头数", "请输入", 0)) f = Val(InputBox("鸡和兔的总脚数(偶数)", "请输入", 0)) x = (4 * h – f) / 2 y = (f – 2 * h) / 2 Label2.Caption = " 设笼中鸡和兔的总头数为" & h & ", 总脚数为" & f & "。" Label3.Caption = " 则笼中鸡有" & x & "只,兔有" & y & "只。" End Sub

习题三 以下各章习题均要求先写出流程图,然后根据流程图写出程序。 3.1 顺序结构的特点是什么?请举一个生活中符合顺序结构的例子,并且用流程图描述之。 3.2 下列哪组语句可以将变量A、B的值互换? (1) A = B : B = A (2) A = A + B : B = A – B : A = A – B (3) A = C : C = B : B = A (4) A = (A + B) / 2 : B = (A – B ) / 2

3.3 理解Top、Left与BackStyle属性。 利用标签制作阴影文字效果。如图3-29(左)所示程序启动后,在窗体上显示出不带阴影的文字“喜迎千禧年”。单击“效果1”按钮后文字出现黑色的阴影,如图3-29(中)所示。单击“效果2”按钮后文字阴影的间距加大,如图3-29(右)所示。 图3-29 阴影文字效果

3.4 向一个RC串联电路充电,电容上的电压为: U0为直流电源的电压。求在t = 1s时(R = 500kΩ,C = 10μf )U / U0的值。 3.5 理解大小写转换函数。 在文本框中输入英文字母,按“转大写”按钮,文本变为大写,按“转小写”按钮,文本变为小写。 3.6 在文本框中输入3种商品的单价、购买数量,计算并输出所用的总金额。 3.7 在文本框中输入小时、分、秒,化成共有多少秒,然后输出之。

3.8 在文本框中输入弧度值,将弧度换算为角度值(度、分、秒)的形式,然后输出。 如弧度值为1.474919573,化为角度的方法为 (1) 先将弧度值变成十进制, 1.474919573×(180/π) = 84.50666665 (2) 去掉整数部分84,余0.50666665。 (3) 用0.50666665×60 = 30.399999。 (4) 去掉30,余0.399999。 (5) 用0.399999×60 = 23.99994 ≈ 24" (6) 最后将84、30、24拼接成84°30' 24"。)

3.9 在文本框中输入长、宽、高,求长方体的表面积,并输出 3.10 在习题3.4中使用对话框函数Msgbox()输出计算的结果。 3.11 在习题3.5中使用对话框函数Msgbox()输出转换结果。 3.12 在习题3.7中使用对话框函数InputBox()输入时间的小时、分钟、秒钟数。 3.13 编程序输出在指定范围内的3个随机数,范围在文本框中输入。