《[工学]林卓然VB教程课件顺序结构第3章教案》由会员分享,可在线阅读,更多相关《[工学]林卓然VB教程课件顺序结构第3章教案(45页珍藏版)》请在金锄头文库上搜索。
1、2018/8/30,1,第 3 章,顺序结构程序设计,2018/8/30,2,一个完整的VB应用程序,一般都包含三部分内容,即输入 处理 输出可通过VB语句、各种控件实现输入输出操作本章主要内容,第3章 顺序结构程序设计,退出,2018/8/30,3,1. 赋值语句Let变量名=表达式示例:x = 5 * 1.42. 注释、结束和暂停语句 (1) 注释语句 Rem 注释内容或 注释内容(2) 结束语句 End(3) 暂停语句 Stop也可以通过单击工具栏上的“中断”按钮来实现使用Ctrl + Break组合键,可强制程序暂停运行,赋值与输入输出,2018/8/30,4,(1)表达式中的变量必须
2、是赋过值的,否则变量的初值自动取零值(变长字符串变量取空字符)。例如:a = 1c = a + b + 3 b未赋过值,为0执行后,c 值为 4(2)赋值语句跟数学中等式具有不同的含意,例如x = x + 1表示把变量x的当前值加上1后再将结果赋给变量“先读后写”:读出x的内容 加1 写回x(覆盖原有内容),说明,2018/8/30,5,(3)变量出现在赋值号的右边和左边,其用途是不相同的。出现在右边表达式中时,变量是参与运算的元素(其值被读出);出现在左边时,变量起存放表达式的值的作用(被赋值)。例如x = 2 a = 3x = 2*a + 5当执行第3行语句“x=2*a+5”时,将读出变量
3、a的值(即3),把该值乘2后加5,然后将结果(11)赋值给变量x。(4)赋值号两边的数据类型必须一致,即同时为数值型或同时为字符型。,说明,2018/8/30,6,编写的窗体单击事件过程代码如下: Private Sub Form_Click()Dim x As Integer, a As IntegerDim b As Integer, c As Integerx = 36a = Int(x / 10) 求十位数b = x Mod 10 求个位数c = b * 10 + a 生成新的数Print “处理后的数: “; cEnd Sub 运行程序后单击窗体,输出结果是:处理后的数:63,例3.
4、1 给定一个两位数(如36),交换个位数和十位数的位置,把处理后的数显示在窗体上,例3.1,2018/8/30,7,编写的VB程序代码如下:Private Sub Form_Click()Dim x As Integer, a As IntegerDim b As Integer, c As Integerx = InputBox(“输入一个位数”)运行时由用户任意给定一个位数a = Int(x / 10) 求十位数b = x Mod 10 求个位数c = b * 10 + a 生成新的数Print “处理后的数: “; cEnd Sub执行后,弹出一个输入对话框,若用户输入“83”,输出结果
5、: 处理后的数: 38,例3.1A 运行时由用户任意给定一个两位数,交换个位数和十位数的位置,把处理后的数显示在网页上。,例3.1A,一种灵活 输入方式 InputBox是VB函数,见P58,2018/8/30,8,例3.2 设计程序,实现两个文本框内容的交换,(1)在窗体上建立两个标签、两个文本框和一个命令按钮(2)编写程序代码借助于另一个变量(假设为 t) ,并直接在控件中交换数据Private Sub Command1_Click() “交换”按钮Dim t As Stringt = Text1.TextText1.Text = Text2.Text Text2.Text = t End
6、 Sub,Text1,Text2,例3.2,有的对象属性 具有变量的特性,2018/8/30,9,编写的程序代码如下 :Private Sub Command1_Click() “交换”按钮t = Text1.TextText1.Text = Text2.TextText2.Text = tEnd Sub,采用变体型变量,说明:对于初学者来说,为了节省时间,有时可以不采用Dim等语句声明就直接使用变量(默认为变体型,如t)。但在规范的软件开发中,通常都要求程序中使用的变量必须预先声明。,没用Dim语句 t 是变体型变量,2018/8/30,10,把上述程序改为以下形式,效果是否一样?,Priv
7、ate Sub Command1_Click() “交换”按钮Text2.Text = Text1.TextText1.Text = Text2.Text End Sub,思考题,想一想,2018/8/30,11,下列程序的运行结果是什么?,运行时,在文本框Text1中输入5,单击“计算” 按钮后,在文本框Text2显示的结果是什么? Private Sub Command1_Click() “计算”按钮Dim a As Integer, b As Integer, c As Integera = Val(Text1.Text)b = 7c = 2 * a Mod b / 3 + 1a = a
8、 + 1b = 2 * b - 1c = c + a + bText2.Text = c End Sub,思考题,想一想,例3.2A,20,2018/8/30,12,3.3.1 Print方法用于显示(输出)文本格式:对象名.Print 表达式列表说明:(1)使用的对象可以是窗体等 Print “程序设计” 在当前窗体上输出 Picture1.Print “程序设计” 在图片框上输出并不是所有控件都支持print,比如Label就不支持。(2)表达式列表是一个或多个表达式,如果省略,则输出一个空行,3.3 使用Print方法输出数据,2018/8/30,13,例3.3 Print输出示例Pri
9、vate Sub Form_Click()a = 3: b = 4Print a, b, 4 + a,Print 2 * bPrint a, , bPrintPrint “a=“; a, “b=“; bEnd Sub运行结果,例3.3,分号“;”紧凑格式,紧挨着输出 逗号“,”按区段格式(14个字符位置) 语句行末尾有分号或逗号,则输出本行输出项后不换行,多个表达式之间用分号; 或逗号,隔开。输出数值数据时,前面自动有一个符号位(正号以空格表示),后面留有一个空格;而输出字符串时,前后不留空格。,2018/8/30,14,1. Spc函数格式:Spc(n)功能:在输出下一项之前插入n个空格。例
10、如:Print “学号“;Spc(2);“姓名“;Spc(5);“成绩“输出结果(表示空格):学号姓名成绩,3.3.2 特殊打印格式,2018/8/30,15,函数格式:Tab(n)功能:把输出位置移到第n列。例如: Print Tab(2);“学号“;Tab(11);“姓名“;Tab(21);“成绩“输出结果是(1个汉字占2个位置):学号姓名成绩,2. Tab函数,2018/8/30,16,程序代码如下:Private Sub Form_Click()PrintPrint Tab(15); “学号“; Tab(26); “姓名“; Tab(36); “成绩“Print Tab(14); St
11、ring(27, “-“) 输出27个减号字符“-”Print Tab(14); “20011001“; Tab(26); “张小三“; Tab(36); 57Print Tab(14); “20011003“; Tab(26); “李小四“; Tab(36); 69Print Tab(14); “20011012“; Tab(26); “马小五“; Tab(36); 92Print Tab(14); String(27, “-“) 输出27个减号字符“-”End Sub,例:使用Tab对输出进行定位,2018/8/30,17,运行结果 ,2018/8/30,18,格式:Format(表达式
12、,格式串)功能:根据格式串规定的格式来输出表达式的值示例 a=4513.7Print Format(a,“#,#.#“)Print Format(a,“$#,#.00“) 输出结果是:4,513.7$4,513.70格式符号#和0都能显示数字,但符号#会剔除不必要的0,符号0会按规定补足0,3. Format函数,2018/8/30,19,窗体(Form)是设计VB应用程序的基本平台窗体本身是一个对象,又是其他对象的载体或容器多数应用程序是从窗体开始执行的 ; 一个程序可以有多个窗体3.4.1 窗体的基本属性设置窗体的属性,可在程序设计时在属性窗口中手工设置,也可以在程序运行时由代码实现默认属
13、性,3.4 窗体,2018/8/30,20,一些常用的窗体属性:Name属性:用于设置窗体的名称。指定窗体的名称。只读,不能在应用程序中修改Caption属性:用于设置窗体标题栏上的标题内容。Maxbutton和Minbutton属性:用于设置最大化和最小化按钮 Height和Width属性:确定窗体的初始高度和宽度 Left和Top属性:确定窗体的左上角在屏幕上的横、纵坐标BackColor和ForeColor属性:设置窗体的背景色和前景色FontName属性:用于在窗体上设置字体。FontSize属性:用于在窗体上设置字号。Visible(可见性):设置对象的可见性,默认值为True,20
14、18/8/30,21,坐标原点(0, 0)在窗体的左上角 坐标轴刻度单位为缇(Twip,567缇为1厘米)当前位置的横坐标(CurrentX)和纵坐标(CurrentY),Y,X, (CurrentX, CurrentY)当前位置,窗体坐标系统,2018/8/30,22,窗体事件过程的一般格式为:Private Sub Form_事件名(参数表)End在事件过程中只能使用Form,而在过程内对窗体进行引用时才会用到窗体名字(如Form1等),3.4.2 窗体的事件,只能写成Form,不能写成Form1,2018/8/30,23,与窗体有关的常用事件有以下几种。Load(装载)事件:启动程序时,
15、通常先执行Form_LoadUnload(卸载)事件 Click(单击)事件 DblClick(双击)事件 KeyPress(按键)事件:当按下键盘上的某个健时,将触发KeyPress事件。其事件过程的格式为:Private Sub 对象_KeyPress(KeyAscii As Integer)End Sub示例:Private Sub Form_KeyPress(KeyAscii As Integer)Print “你录入的键是:“; Chr(KeyAscii)End Sub,参数KeyAscii返回所按键的ASCII码,2018/8/30,24,(1)Show方法:用于快速显示一个窗体,使该窗体变成活动窗体。例如:Private Sub Form_Load()ShowPrint “窗体已被how显示出来!”End Sub(2)Print方法:用于在窗体上输出表达式的值(3)Cls方法:用于清除运行时在窗体中显示的文本或图形(4)Move(移动)方法:用于移动并改变窗体或控件的位置和大小,