VB顺序结构程序设计

VB顺序结构程序设计

ID:37438031

大小:726.50 KB

页数:46页

时间:2019-05-12

上传者:U-145848
VB顺序结构程序设计_第1页
VB顺序结构程序设计_第2页
VB顺序结构程序设计_第3页
VB顺序结构程序设计_第4页
VB顺序结构程序设计_第5页
资源描述:

《VB顺序结构程序设计》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

第4章顺序结构程序设计本章要点:赋值语句▲数据输入▲*数据输出▲*注释、暂停与程序结束语句1 事件驱动:将代码划分成一些“子过程”过程结构:过程内部代码由三种基本结构组成即:顺序结构、选择结构、循环结构顺序结构:执行过程的次序从上到下,从左到右例:PrivateSubCommand1_Click()ConstPi=3.14H=Val(Text1.Text):R=Val(Text2.Text)Text3.Text=Pi*R^2*HEndSub2 4.1赋值语句1.格式[let]<变量名>=<表达式>或:[<对象名>.]<属性名>=<表达式>2.功能计算表达式的值,再将此值赋给变量或对象属性。3.说明(1)<变量名>:应符合VB变量命名约定。(2)<表达式>:常量、变量、表达式、属性。(3)<对象名>:缺省时为当前窗体。(4)赋值号“=”:与数学中的等号意义不同。例:X=X+13 (5)赋值号左边必须是变量或对象属性。例:X=1MyStr="GoodMorning"Command1.Caption="确定"X+1=X'错误,赋值号左边是表达式Y=5'正确5=Y'错误,赋值号左边是常量(6)变量名或对象属性名的类型应与表达式类型相容。类型相容:指变量名或对象属性名能够正确存取赋值号右边的表达式的值。4 例:DimAAsInteger,BAsSingleDimCAsDouble,SAsStringA=100'将整型数100赋给整型变量AS="123.45"'将字符串"123.45"赋给变量SA=S'将数字字符串变量赋给整型变量,'变量A中存放123S=A'S中存放字符串"123"B=12345.67A=B‘高单度变量赋值给整型变量,'先四舍五入后取整,A中存放12346C=123456.789B=C'高精度变量赋值给低精度变量,'变量B中存放123456.8。有效数字7位S="abc"A=S'错误,类型不匹配5 (7)变量未赋值时,数值型变量值为0,字符串变量值为空串""。(8)给可变类型的变量赋值后,变量的类型为赋值号右边表达式的类型。例:执行下列各赋值语句后,A的数据类型是什么?(设A没有定义数据类型)A=6=5A=5+3A="5+3"A="#11/26/99#"A=#11/26/1999#A=Not5>8可用TypeName函数显示变量的数据类型。如:PrintTypeName(A)6 【例4-1】设变量A中存放5,变量B中存放8,交换两个变量的值,使变量A中存放8,变量B中存放5。代码如下:A=5B=8C=AA=BB=CVB4lt1:进入VB环境ABCC=AA=BB=C7 4.2数据输入把要加工的初始数据从某种外部设备(例如键盘)输入到计算机中,并把处理结果输出到指定设备(如显示器),这是程序设计语言所应具备的基本部分。赋值语句;输入框(InputBox);文本框(TextBox);……输入8 4.2.1用输入框(InputBox)输入数据1.InputBox函数的格式InputBox(<提示信息>[,<标题>][,<默认值>])2.功能提示一对话框,等待用户输入正文或按下按钮,并返回包含文本框内容的字符串。3.说明<提示信息>:字符串表达式。可用Chr(13)、Chr(10)、Chr(13)&Chr(10)、vbCrLf换行。最多可有1024个字符<标题>:字符串表达式,省略时默认为应用程序名。<默认值>:字符串表达式,省略时默认为空。返回值:字符串(在对话框中单击取消则返回"")9 例:PrivateSubForm_Activate()DimRAsSingle,AREAAsSingleR=Val(InputBox(“请输入半径”,“计算面积”,“1”))AREA=3.14*R^2Print"R=";R;"AREA=";AREAEndSub单击“确定”,返回文本框中的文本到变量R中单击“取消”,返回一个零长度的字符串10 用文本框输入数据时,也就是将文本框的Text属性的内容赋值给某个变量。例:将文本框Text1中输入的字符串赋给字符串变量MystrDimMyStrAsStringMyStr=Text1.Text例:将文本框Text1中输入的字符串作为数据赋给整型变量DimAAsIntegerA=Val(Text1.Text)4.2.2用文本框(TextBox)输入数据11 1.文本框控件的常用属性Text属性:表示文本框中包含的内容Locked属性:决定文本框的内容是否可编辑Multiline属性:为true,可输入多行文本,默认为false.Scrollbars:决定是否有滚动条以及滚动条的显示方式。默认为不显示。Passwordchar:显示在文本框中的替代符,如“*”,主要用于口令的输入。Maxlength:指定显示的字符个数,超出部分不接收,并同时发出嘟嘟声。12 2.文本框控件的显示文本文本框显示的文本受text属性控制。Text属性可以用以下3种方式设置:设计时在属性窗口中进行;编程时通过代码设置运行时由用户输入若不希望用户更改文本,可以把文本框的locked属性设置为true或将enabled属性设置为False以vb4lt1为例说明13 3.多行文本框若需要在文本框中显示多行文本,可以修改文本框的multiline和scorllbars属性,但这两种属性只能在属性窗口中修改。Multiline属性TRUE:可以输入和显示多行文本,同时具有文字处理器的自动换行功能,按ctrl+enter组合键可以插入一行。Scorllbars属性当multiline为true时,scrollbars属性才有效。0-none1-horizontal2-vertical3-both若无horizontal滚动条,文本框的文本会自动按字换行,当加了horizontal以后,文本框的自动换行功能会自动消失,只有按enter键才能换行。举例说明。14 1.焦点当前可以接收用户输入的对象称为具有焦点。注意:并非所有控件都可以接收焦点。而且,只有Enable和Visible属性为True时,才可以接收焦点。2.事件GotFocus发生在对象得到焦点时LostFocus发生在对象失去焦点时3.对象何时得到焦点运行时选择对象(鼠标、Tab键、访问键)在代码中使用SetFocus方法其格式为:<对象>.setfocus4.2.3焦点和Tab键序15 4.对象何时失去焦点运行时用Tab键移动、用访问键或用鼠标单击选择另一个对象。在代码中对另一个对象使用SetFocus方法改变焦点。5.Tab键序指按Tab键时焦点在各个控件之间移动的顺序。每个窗体都有自己的Tab键序。默认键序与控件的建立次序一致。TabIndex属性:决定Tab键序改变TabIndex属性可以改变Tab键序TabStop属性:决定是否能够使用TAB键将焦点移动到当前对象。16 【例4-2】设计如下图所示的界面,运行时,输入某学生三门课的成绩,计算平均成绩。按要求编程。要求:单击“计算”按钮求平均成绩;当输入成绩的文本框获得焦点时,选中其中的文本;当输入成绩的文本框内容发生变化时,清除平均值;单击“清除”按钮清除所有内容,将焦点定位在Text1中;单击“退出”按钮结束程序的运行。Text4Text1Text2Text3Command1Command2Command3设Text4的Locked属性为True17 ①单击“计算”按钮求平均成绩PrivateSubCommand1_Click()A=Val(Text1.Text)B=Val(Text2.Text)C=Val(Text3.Text)Text4.Text=(A+B+C)/3EndSub18 ②当输入成绩的文本框获得焦点时,选中其中的文本PrivateSubText1_GotFocus()Text1.SelStart=0Text1.SelLength=Len(Text1.Text)EndSubPrivateSubText2_GotFocus()Text2.SelStart=0Text2.SelLength=Len(Text2.Text)EndSubPrivateSubText3_GotFocus()Text3.SelStart=0Text3.SelLength=Len(Text3.Text)EndSub19 ③当输入成绩的文本框内容发生变化时,清除平均值PrivateSubText1_Change()Text4.Text=""EndSubPrivateSubText2_Change()Text4.Text=""EndSubPrivateSubText3_Change()Text4.Text=""EndSub20 ④单击“清除”按钮清除所有文本框的内容,并将焦点定位在文本框Text1中。PrivateSubCommand2_Click()Text1.Text=""Text2.Text=""Text3.Text=""Text4.Text=""Text1.SetFocusEndSub⑤单击“退出”按钮结束程序的运行。PrivateSubCommand3_Click()EndEndSub21 4.2.4框架控件框架(frame)控件是一种容器控件。在框架控件内的控件可以随框架一起移动,并且受框架控件的某些属性(visible,enabled等)的控制。使用框架控件对其他控件进行分组,可以使界面更清晰明了。一般不需要响应框架控件的事件。使用框架控件将其他控件分组的方法有两个:先画框架控件并激活,再加入其中的控件,这样可使框架控件及其上的控件一起移动。若要用框架控件将现有的控件分组,可先选定所有控件,将它们剪切到剪贴板上,然后选定框架控件进行粘贴。以vb4lt2为例。22 4.3数据输出在程序设计中对输入的数据进行加工后,往往需要将处理结果、提示信息等呈现给用户,即输出。输出Print方法消息框(MsgBox)文本框标签……23 用文本框输出数据时,也就是将数据赋给文本框的Text属性。例如输出一个字符串(或数值),输出多个字符串(或数值)例:用文本框Text1输出一个字符串Text1.Text="hello"例:用文本框Text1输出一个数值型数据X=3^5Text1.Text=Str(X)‘Str可以省略或用Format例:用文本框Text1输出多个数,分多行输出。首先将文本框的MultiLine设置为True,必要时可以进一步设滚动条属性ScrollBars。X=3^5:Y=7^4Text1.Text=Str(X)&vbCrLf&Str(Y)4.3.1用文本框(TextBox)输出数据24 【例4-3】在Text1中输入任一英文字母,在Text2中显示该英文字母及其ASCII码值。要求在文本框Text2中显示出所有输入的英文字母及其ASCII码值。Text1Text2Command125 PrivateSubCommand1_Click()DimCharAsString*1Char=Trim(Text1.Text)Text2.Text=Text2.Text&Space(5)&Char&_Space(10)&Str(Asc(Char))&vbCrLfText1.SetFocusText1.SelStart=0Text1.SelLength=Len(Text1.Text)EndSubChr(13)&Chr(10)26 4.3.2用标签(Label)输出数据用标签输出数据时,也就是将数据赋给标签的Caption属性。也可以输出多个数据。例:用标签Label1输出一个字符串Label1.Caption="hello"例:用标签Label1输出一个数值型数据X=3^5Label1.Caption=Str(X)例:用标签Label1输出多个数,分多行输出。通常要先设置标签的AutoSize属性和WordWrap属性为True。X=3^5:y=7^4Label1.Caption="x="&Str(X)&vbCrLf_&"y="&Str(y)27 【例4-4】已知三角形的三条边a、b、c的长度,用海伦公式求三角形的面积S。海伦公式:将文本框Text1、Text2、Text3的内容清空;设置三个文本框的Alignment属性为1-RightJustify;设置标签Label2的Caption属性为空;设置标签Label2的BorderStyle属性为1–FixedSingle。Text1Text2Text3Label2Command128 代码如下:PrivateSubCommand1_Click()DimAAsSingle,BAsSingle,CAsSingleDimPAsSingle,SAsSingleA=Val(Text1.Text)B=Val(Text2.Text)C=Val(Text3.Text)P=(A+B+C)/2S=Sqr(P*(P-A)*(P-B)*(P-C))'显示时保留两位小数Label2.Caption=Format(S,"0.00")EndSub29 消息框常用于在屏幕上显示一个对话框,给出一些提示或警告信息,并允许用户进行选择。程序可根据该选择确定进一步的操作。1.MsgBox函数的格式<变量>=MsgBox(<提示信息>[,<按钮类型>][,<标题>])或:MsgBox<提示信息>[,<按钮类型>][,<标题>]4.3.3用消息框(MsgBox)输出数据图标标题提示信息命令按钮30 2.功能在对话框中显示消息,等待用户单击按钮,并返回一个整数告诉用户单击了哪个按钮。3.说明(1)“标题”和“提示”与InputBox函数中对应的参数相同;(2)“按钮类型+图标类型+默认按钮”是整型表达式,决定信息框按钮数目、出现在信息框上的图标类型及默认按钮。(3)若程序中需要返回值,则使用函数,否则可调用过程。31 按钮及图标值如下:根据用户所选按钮,函数返回1—7的整数值,其含义如下表:(表4-9)32 例:<提示信息>PrivateSubCommand1_Click()MsgBox"提示信息"EndSub例:<提示信息>换行PrivateSubCommand1_Click()MsgBox"第一行"&Chr(13)&Chr(10)&"第二行"EndSub33 例:<对话框标题>PrivateSubCommand1_Click()A=MsgBox("提示信息",,"标题内容")EndSub例:按钮类型—0到5或符号常量见P65PrivateSubCommand1_Click()A=MsgBox("提示信息",1,"标题内容")EndSub34 例:图标类型—16、32、48、64或符号常量见P67PrivateSubCommand1_Click()A=MsgBox("提示信息",16,"标题内容")EndSub例:默认按钮—0,256,512见P67PrivateSubCommand1_Click()a=MsgBox("提示信息",2+256,"标题内容")PrintaEndSub按回车打印435 4.3.4用Print方法输出数据1.Print方法格式:[<对象名>.]Print[<表达式表>][{;|,}]<对象名>:窗体如Form1.Print"Hello"图片框如Picture1.Print"Hello"打印机如Printer.Print"Hello"立即窗口如Debug.Print"Hello"省略:默认为当前窗体。<表达式表>:多个表达式使用逗号或分号隔开。逗号:以14个字符位置为单位把一个输出行分成若干区段。分号:后一项紧跟前一项输出。36 输出时,数值型数据前有一个符号位(正号不显),后面留一个空格位;字符串原样输出,前后无空格。例:PrivateSubForm_Activate()Print"12345678901234567890"Print"2+4=";2+4,Print"2-4=";Print2-4EndSub例:PrivateSubForm_Activate()Print"12345678901234567890"Print"2+4=";2+4Print"2-4=",2-4EndSub37 例:PrivateSubForm_Load()Form1.ShowPrint"12345678901234567890"Print'产生空行Print"2+4=";2+4,Print'取消上面一句末尾逗号的作用Print"2-4=";Print2-4EndSub输入Print时可用?代替,VB将其自动转换成Print38 2.与Print方法有关的函数(1)Tab函数格式:Tab[(n)]功能:在指定的第n个位置上输出数据。参数n:n<当前位置:打印位置为下一行的第n列n<1:打印位置为第1列省略:打印位置为下一个打印区的起点(每14个字符为一个打印区)当n大于行的宽度时,显示位置为:nmod<行宽>39 例:PrivateSubForm_Activate()Print"12345678901234567890"Print"Hello";Tab(10);"World"Print"Hello";Tab;"World"Print"Hello";Tab(4);"World"PrintTab(-5);"Hello"EndSub40 (2)Spc函数格式:Spc(n)功能:n表示在显示或打印下一个表达式之前插入的空格数。表示跳过n个空格。例:Print"HOW";Spc(3);"ABOUT"结果:HOW∪∪∪ABOUT注意:Spc函数与Space函数、Tab函数的区别Space函数:可以用在字符串允许出现的任何位置。Spc函数:只能用在打印语句中。Tab函数指定绝对位置;Space函数或Spc函数指定相对位置。41 3.清除方法Cls使用cls方法可以清除form,picturebox中由print方法或图形方法在运行时所生成的图形或文本,清除后的区域以背景色填充。使用格式为:[<对象名>].cls说明:(1)对象名可以是form或picturebox.若省略,则清除窗体上由print方法或图形方法在运行时所生成的文本或图形。(2)设计时使用picture属性设置的背景位图和放置的控件不受cls方法影响。举例说明。42 4.4注释、暂停、卸载对象与程序结束语句1.注释语句格式:'|Rem<注释内容>功能:给语句或程序段加上注释,以提高可读性。说明:Rem与<注释内容>之间至少空一个空格。例:PrivateSubForm_Activate()Rem本程序用于计算圆的面积DimRAsString,AREAAsSingle'R为半径R=InputBox("请输入半径",,"1"):Rem输入半径AREA=3.14*Val(R)^2'以下将半径和面积输出到窗体上PrintVal(R),AREAEndSub43 2.暂停语句格式:Stop功能:暂停程序的执行。用于程序调试。类似于执行“运行”菜单中的“中断”命令3.卸载对象语句当要结束应用程序或从内存中卸载窗体,或从内存中卸载某些控件时,可以使用unload语句。格式:Unload<对象名>功能:从内存中卸载掉对象。4.结束语句格式:End功能:结束程序的执行。44 本章小结:输入计算、处理:输出赋值语句文本框IntputBox函数赋值语句标签文本框Print语句MsgBox函数开始输入计算、处理输出结束顺序结构程序:45 课堂作业:1.编写大小写转换函数程序。在文本框中输入英文字母,按”转大写“按钮,文本变成大写;按”转小写“按钮,文本变成小写。2.设某职工应发工资x元,试求各种面额钞票总张数最少的付款方案。3.设计工程,输出在指定范围内的3个随机数,范围在文本框中输入。46

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
关闭