VisualBasic教案-程序设计基础_第1页
VisualBasic教案-程序设计基础_第2页
VisualBasic教案-程序设计基础_第3页
VisualBasic教案-程序设计基础_第4页
VisualBasic教案-程序设计基础_第5页
已阅读5页,还剩62页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第二章VB程序设计基础,面向对象程序设计基础VB语言基础基本控制结构常用函数过程常用算法,夯实基础,乘胜前进,一.面向对象程序设计基础,2.对象3.类4.VB中的类和对象及其应用1)窗体和常用控件2)VB中对象的属性设置3)VB中对象的事件4)VB中对象的方法,1.程序设计方法概述,面向过程,面向对象,HOWTODO,WHATTODO,1.程序设计方法概述,功能,数据,2.对象的概念,型号颜色功率,启动加速停止,对象是具有某些特征的具体事物(实体)。是代码和数据的集合,计算机技术基础IVisualBasic6.0,*对象的建立和编辑,建立选定复制删除命名,对象的属性、事件和方法,属性(Property)事件(Event)事件过程(程序)和事件驱动方法(Method),-对象的三要素,属性用于描述对象,方法让对象做一些动作,而对象动作时常会引起事件,3.类的概念,类是创建对象实例的模板,是同种对象的集合与抽象。,实际上,类是一种新的数据类型;类的一组属性和方法定义了类的界面,它封装了用于类的全部信息。,计算机技术基础IVisualBasic6.0,*对象和类的关系,帐户上的顾客想做什么?,类是对多个对象的抽象,对象是类的一个实例。,存款、取款、转帐,4.VB中的类和对象,标准控件类,控件对象,计算机技术基础IVisualBasic6.0,窗体和常用控件,窗体Form:窗体是个特例,它即是类也是对象。常用控件:标签Label文本框Textbox命令按钮CommandButton,1)窗体和常用控件,A.窗体(Form),Name名称属性Caption标题属性Height、Width、Top和Left大小位置属性BackColorForeColor属性Pictrue属性MaxButtonMinButton属性Enabled属性,常用属性:常用事件:ClickDbclickLoad主要方法:ClsMovePrint,不能作为输入信息的界面;一般不需要编写事件过程;常用属性:Caption,Font,Left,Top等。,B.标签(Label),在窗体中显示某些文本,C.文本框(TextBox),常用属性:Text(无Caption)常用事件:Change,KeyPress,LostFocus,GotFocus主要方法:SetFocus形式:对象.SetFocus(将焦点移到文本框),文本的输入、编辑和显示,D.命令按钮(CommandButton),常用属性:Caption,Style(0标准1图形),Picture,ToolTipText(设置当鼠标在控件上停留时显示的文本)常用事件:Click,建立实现命令的按钮,E.基本属性,控件的属性和设置是学习VB的主要内容之一,Name名称属性Caption标题属性Height、Width、Top和Left大小位置属性Enabled属性Visible属性控件默认属性,2)VB中对象的属性设置,属性是用来描述和反映对象特征的参数。对象中的数据就保存在属性中。属性设置方法:(1)利用属性框直接设置;(2)在程序代码中通过赋值实现,格式为:对象.属性属性值例:label1.caption=“educationforall-arounddevelopment”,例:Caption素质教育,3)VB中对象的事件,事件就是发生在对象上的事情。在VB中,系统为每个对象预先定义好了一系列的事件。VB应用程序设计的主要工作就是为对象编写事件过程中的程序代码。形式如下:Sub对象名_事件(参数表)事件过程代码EndSub控件是代表一定功能的对象,代码是实现应用程序功能的具体过程和说明。,*事件驱动程序设计(1),在传统的面向过程的应用程序中,代码的执行是从第一行开始,随着程序流执行代码的不同部分。程序执行的先后次序由设计人员编写的代码决定,用户无法改变。在VB中,程序等待某个事件的发生,然后执行该事件过程,之后再等待新事件的发生。这就是事件驱动程序设计方式。因此,应用程序每次运行时的代码路径可能都不同。,无头无尾,*事件驱动程序设计(2),VB程序的执行步骤如下:启动应用程序,装载和显示窗体;窗体(或控件)等待事件的发生;事件发生时,执行对应的事件过程;重复执行步骤2)和3),直至End语句。,VB是以事件驱动作为运行机制的新一代可视化程序设计语言,4)VB中对象的方法,当某个行为作用在对象时,称对象执行了一个方法。方法定义了一系列的计算步骤。在VB中,已将一些通用的过程和函数编写好并封装起来,作为方法供用户直接调用。对象方法的调用格式:对象.方法参数名表其中,若省略了对象,表示为当前对象,一般指窗体。,方法是面向对象的,调用时一定要用对象。,方法(Method)是在对象上执行指定操作的过程和函数,常用方法Print,对象.PrintSpc(n)|Tab(n)表达式列表;|,其中:对象:可以是窗体(Form)、图形框(PictureBox)或打印机(Printer),若省略则为窗体。Spc(n)函数:输出n个空格,可重复使用。Tab(n)函数:定位于第n列。表达式列表:若省略则输出空行,多个表达式之间用空格、逗号、分号分隔,也可出现Spc和Tab函数。,标准格式与;紧凑格式行尾符号(有,;不换行),常用方法Cls,Cls方法用于清除运行时在窗体或图形框中显示的内容:对象.Cls注意:1)Cls方法只在运行时起作用,设计时不清除;2)Cls方法使用后,CurrentX,CurrentY属性被设置为0。,常用方法Move,Move方法用于移动窗体或控件,并可改变其大小:对象.Move左边距离,上边距离,宽度,高度其中:对象:除时钟、菜单外的所有控件,省略时为窗体。移动量:以twip为单位,1twip=1/20点=1/567厘米。,二.VB程序设计语言基础,1.VB语言基本概念2.数据类型3.常量和变量4.表达式5.编码规则,1.VB语言基本概念,1)标识符,2)运算符,1)标识符,标识符是为变量、常量、数据类型、过程、函数和类定义的名字。规则如下:必须以字母或汉字开头,后跟字母、数字、下划线,中间不能空格;VB中不区分大小写;长度不能超过255个字符;不能和VB中已有的关键字相同。例如:3xy;y-z;wangping;Dim等都不可;Cos;sin等也不好,易混淆。,2)运算符,VisualBasic中运算符包括:赋值运算符数学运算符关系运算符逻辑运算符。,A.赋值运算符:,格式:variable=valuevariable可以是变量、数组的元素、变长数组或运行时可写的对象的属性;(不能是数值、常量和表达式)value可以是常量、变量、表达式或函数调用;赋值号两端数据类型应匹配。sin(x)=x+yx=y=z=1(错误)sum=sum+1(常用),算术运算符:,-(负),*,/(除),(整除),Mod(取余),+,(减)结合顺序都是从左到右;可以通过圆括号改变运算优先级和结合顺序。将数字字符或逻辑型自动转换为数值型。例:30True(31)(true-1,false0),B.数学运算符,字符串运算符:一行最多写255个字符。注释有利于程序的维护和调试注释行以Rem开头,或用“”开始直接写在语言后;也可使用“编辑”工具栏中的“设置注释块”等命令。尽量少用行号与标号,三.基本控制结构,顺序结构选择结构循环结构其它辅助控制语句,1.顺序结构,赋值语句人机交互函数和过程,A.表达式类型与变量类型不同时的处理(1)表达式为数值型而与变量精度不同时,强制转换成左边变量的精度;n%=3.5(4)(2)表达式是数字字符串,左边变量是数值类型,自动转换成数值类型再赋值,但表达式有非数字字符或空串时,则出错;n%=“123”(123)n%=“1a23”(出错)(3)当逻辑型赋值給数值型时,Ture转换成-1,False转换成0。反之数值型赋值給逻辑型时,非0转换成True,0转换成False。(4)任何非字符类型赋值給字符类型,自动转换成字符类型,以左边变量类型为准,1)赋值语句,(1)赋值号和关系运算符等于号相同,在条件表达式中出现的是等号,否则是赋值号;(2)赋值号左边只能是变量,不能是常量常数符号或表达式;(3)不能在一条语句中,同时給多个变量赋值;Dimx%,y%,z%x=y=z=1(4)常用:Sum=Sum+xn=n+1,B.应用注意事项,2)人机交互函数和过程,InputBox()函数:InputBox(提示,标题,默认,x坐标位置,y坐标位置),例:DimstrNameAsString*40,strs1AsString*40strs1=请输入您的姓名+Chr(13)+Chr(10)+然后单击确定strName=InputBox$(strs1,输入框,100,100),提示:不能省,为字符串表达式。默认:字符串表达式,无输入时以此为输入内容,MsgBox()函数和MsgBox过程:变量%=MsgBox(提示,按钮,标题)MsgBox提示,按钮,标题,例:MsgBox(“脚数小于头数的倍数,重新输入”),“按钮”设置值及意义:,0只显示“确定”按钮1显示“确定”“取消”按钮2显示“终止”“重试”“忽略”按钮3显示“是”“否”“取消”按钮4显示“是”“否”按钮5显示“重试”“取消”按钮,16关键信息图标红色STOP标志32询问信息图标?48警告信息图标!64信息图标i,1确定2取消3终止4重试5忽略6是7否,MsgBox函数返回所选按钮整数值的意义:,资料,2.选择结构,SelectCase语句条件函数,If条件语句,1)If条件语句,IfThen语句(单分支结构):1)IfThenEndIf,2)IfThen,1)IfThenElseEndIf,IfThenElse语句(双分支结构):,2)IfThenElse,IfThenElseIf语句(多分支结构),If语句的嵌套,IfThenElseIfThenElseEndIf,2)SelectCase语句,SelectCase变量或表达式Case表达式列表1Case表达式列表2CaseElseEndSelect,“变量或表达式”:可以是数值型或字符串表达式,“表达式列表I”:与“变量或表达式”的类型必须相同,可以是以下四者之一:1.表达式2.一组用逗号分隔的枚举值3.表达式1to表达式24.Is关系运算符表达式,3)条件函数,#IIf()函数:IIf(表达式,当条件为True时的值,当条件为False时的值)如:求x、y中大的数,放在Tmax变量中,语句为,Tmax=IIf(xy,x,y),#Choose()函数:Choose(整数表达式,选项列表)如:根据Nop是14的值,转换成运算符的语句为,Op=Choose(Nop,),3.循环结构,For循环语句:For循环变量初值to终值Step步长ExitForNext循环变量,循环体,DoLoop循环语句:,DoWhile/UntilExitDoLoopDoExitDoLoopWhile/Until,循环的嵌套,While-条件为真时执行循环体;Until-条件为假时执行循环体,前测型,后测型,4.其它辅助控制语句,GoTo语句:形式:GOTo标号/行号,Exit语句:ExitFor(Do/Sub/Function)End语句:EndIf(Select/While/Type/)With语句:With对象语句块EndWith,WithMyLabel.Height=2000.Width=2000.FontSize=22.Caption=“ThisisMyLabel”EndWith,四.常用函数,数学函数字符串函数转换函数日期函数其他函数,Sin(x),Cos(x),Tan(x),Atan(x),Log(x),Exp(x),Sqr(x),Abs(x)Hex$(x),Oct$(x),Rnd(x),Int(x),Fix(x),注意:1)Sin(x),Cos(x),Tan(x)的自变量及Atan(x)的返回值为弧度;2)Hex$(x),Oct$(x)分别以字符串的形式返回x的十六和八进制值,x的值带小数时采取四舍五入的方法先变为整数;3)凡函数名后有$符号的,表示函数返回值为字符串数;4)取整函数Int(x),Fix(x)的异同:去掉小数返回整数,当x为负数时,Int(x)返回小于负数的负整数,Fix(x)返回大于负数的负整数。,1.数学函数,5)随机函数Rnd(x),产生一个大于或等于0小于1的单精度数。常用形式:Int(Rnd*范围+基数)-产生一定范围的随机整数例如:A.产生30,50之间的随机整数(包括30,50)x=Int(Rnd*21+30)B.产生=1且=6的随机整数Myvalue=Int(Rnd*6+1)也可写成:Int(upper-lower+1)*Rnd+lower)upper:为随机整数上限lower:为随机整数下限注意:包含上下限的值。为什么?,1).InStr(起始位置,字符串1,字符串2,比较类型)查找,返回字符串2在字符串1中第一次出现的位置;比较类型:0或缺省区分大小写,1不区分2).LTrim$(字符串)3).RTrim$(字符串)4).Trim(字符串)去掉字符穿左、右、左右空格5).Left$(字符串,个数)6).Right$(字符串,个数)取出字符串左边、右边指定个数的字符7).Mid$(字符串,起始位置,个数)-取出指定个数的字符8).Len(字符串和字符串变量)-一个汉字和一个字母一样为1,2.字符串函数,举例:表4-8P88,9).Ucase$(字符串)-小写转大写,其它字符不变10).Lcase$(字符串)-大写转小写,其它字符不变11).Space$(个数)-返回指定个数的空字符串12).String(个数,字符)-返回重复字符的字符串当“字符”为串时,用其第一个字符,Str$(数值表达式)Val(字符串),Chr(66)BAsc(B)66Asc(Chr(99)99Chr(Asc(K)KUcase$(abcdefg)ABCDEFG,Chr$(N)ASCII码值转换成字符Asc(C)字符转换成ASCII码值,例如:,3.转换函数,4.日期函数,Time返回系统时间、Date返回系统日期、Now返回系统日期和时间Hour返回时间值、Day返回日期值、DateAdd(要增减日期形式,增减量,要增减的日期变量)如:DateAdd(“ww”,2,#2/14/2000#)结果为:#2/28/2000#DateDiff(要间隔日期形式,日期1,日期2)如求离你毕业还有多少天:DateDiff(“d”,date,#07/01/2007#)假定2007年毕业,日期形式:,yyyy年、q季、m月、y一年的天数、d日、w一周的日数、ww星期、h时、n分、s秒,1)判断函数:Iff(表达式,真部分,假部分)2)格式输出函数Format$(表达式,格式字符串)数值格式化;日期和时间格式化;字符串格式化3)Shell()函数调用应用程序Shell(命令字符串,窗口类型),窗口类型值为1表示正常窗口,缺省窗口最小化为图标,5.其它函数,Shell函数举例:,i=Shell(c:windowscalc.exe“,1),j=Shell(c:,1),五.过程,Sub子过程:定义方法:代码窗口,添加过程对话框;调用方式:过程名参数1,参数2;Call过程名(参数1,参数2)Function函数过程看成一个数,放在赋值号右端;直接作为参数出现在调用过程或

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论