1、单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,VISUAL BASIC,计算机程序设计语言,第一章,Visual Basic,基本概念,计算机程序设计语言,低级语言:面向机器的语言。,机器语言:仅由,0,、,1,系列组成,汇编语言:机器指令符号化,高级语言:与机器无关的语言,是自然语言的一个子集。,何谓,Visual Basic,?,“,Visual”,指的是开发图形用户界面,(GUI),的方法。不需编写大量代码去描述界面元素的外观和位置,而只要把已有对象添加到屏幕上即可。,“,Basic”,指的是,BASIC(Beginners All-Purpose
2、Symbolit Instruction Code,初学者通用符号指令代码,),语言。,Basic,语言的发展,60,年代,,Basic,语言:其含义是“初学者通用的符号指令代码”,随后功能更强的,Basic,语言:,GWBASIC,、,BASICA,编译型的结构化,BASIC,语言,并具有集成工作环境,IDE,,亦可解释执行:,QUICK BASIC,:、,TRUE BASIC,WINDOWS,,,GUI,(图形用户界面),对用户的福音、对软件开发者的灾难(窗口、菜单、字形(包括字体、字型、字号)、对话框等各种构件),90,年代,,VISUAL BASIC,,,91,年,1.0,版、,92,
3、年,2.0,版、,93,年,3.0,版、,95,年,4.0,版、,97,年,5.0,版、,98,年,6.0,版,Visual Basic,的特点,可视化编程:一套可视化设计工具;隐藏了图形“界面”设计的复杂性;并支持所见既所得的特性;,面向对象的程序设计技术:不必编写建立和描述每个对象的程序代码,由系统自动生成封装了程序和数据的可视对象。编程人员仅需编写该对象要实现的功能所对应的代码。,结构化程序设计语言:接近于自然语言和人类的逻辑思维方式,有利于程序的模块化;程序编辑器支持彩色代码、自动进行语法检查;功能强大灵活的调式器、编译器。,事件驱动机制:整个应用程序由分散的模块组成,由用户或系统通过
4、事件引发对应的程序模块,从而理顺了程序设计者与用户之间的对立关系。,支持数据库管理:,VB,提供开放式数据库连接功能(,Open DataBase Connectivity,),ODBC,,可直接访问或建立连接的方式使用并操作后台的大型网络数据库。,支持动态数据交换(,DDE,:,Dynamic Data Exchange,):可在两个应用程序之间进行通信或动态的交换数据。,事件驱动机制:整个应用程序由分散的模块组成,由用户或系统通过事件引发对应的程序模块,从而理顺了程序设计者与用户之间的对立关系。,支持数据库管理:,VB,提供开放式数据库连接功能(,Open DataBase Connect
5、ivity,),ODBC,,可直接访问或建立连接的方式使用并操作后台的大型网络数据库。,支持动态数据交换(,DDE,:,Dynamic Data Exchange,):可在两个应用程序之间进行通信或动态的交换数据。,支持对象的链接与嵌入(,OLE,:,Object linking and embeding,):或称为,ActiveX,技术,是一种程序一体化技术,支持多媒体信息(声音、图象、动画、文字)的处理。,支持动态链接库(,DLL,:,dynamic linking library,):使,VB,通过包含,C/C+,或汇编语言,具备了低级语言的功能,可直接操作机器硬件,还可调用,Windo
6、ws API,函数,实现,SDK,的所有功能。,Visual Basic 6.0,版本简介,学习版,:使编程人员轻松开发,Windows,和,Windows NT,(R),的应用程序。该版本包括所有的内部控件以及网格、选项卡和数据绑定控件。,专业版,:为专业编程人员提供了一整套功能完备的开发工具。该版本包括学习版的全部功能以及,ActiveX,控件、,Internet Information Server Application Designer,、集成的,Visual Database Tools,和,Data Environment,、,Active Data Objects,、和,Dyn
7、amic HTML Page Designer,。,Visual Basic 6.0,版本简介,企业版,:使得专业编程人员能够开发功能强大的组内分布式应用程序。该版本包括专业版的全部功能以及,Back Office,工具,例如,SQL Server,、,Microsoft Transaction Server,、,Internet Information Server,、,Visual SourceSafe,、,SNA Server,,及其他。,Visual Basic,能做什么,到底能用,VB,干什么呢?,也许应该问不能用它干什么更恰当一些。,答案是:,没有什么不能干的!,从,设计新型的用户
8、界面,到,利用其它应用程序的对象,;,从,处理单一信息,到,多媒体信息,;,从,处理普通数据,到,使用数据库中的数据,;,从,单机应用程序,到,网络应用程序,;,从,开发个人或小组使用的小工具,到,大型企业应用系统,;,Visual Basic IDE,集成开发环境,IDE,,集成:设计、编辑、编译和调试,Visual Basic IDE,集成开发环境,IDE,,集成:设计、编辑、编译和调试,IDE,的元素,菜单条,快捷菜单,工具栏,工具箱,工程管理器窗口,属性窗口,显示所使用的,Visual Basic,命令。除了提供标准“文件”、“编辑”、“视图”、“窗口”和“帮助”菜单之外,还提供了编程
9、专用的功能菜单,例如“工程”、“格式”或“调试”。,包括经常执行的操作的快捷键。使用鼠标右击对象即可打开快捷菜单。在快捷菜单中的快捷清单取决于右击对象。例如,在“工具箱”上单击鼠标右键时显示的上下文菜单:显示“部件”对话框,隐含“工具箱”,连接或挂断“工具箱”,或在“工具箱”中添加自定义选项卡。,在编程环境下提供对于常用命令的快速访问。按照缺省规定,启动,VB,之后显示“标准”工具栏。附加的编辑、窗体设计和调试的工具栏可以从“视图”菜单上的“工具栏”命令中移进或移出。工具栏能紧贴在菜单条之下,或以垂直条状紧贴在左边框上,如果将它从菜单下面拖开,则它能“悬”在窗口中。,提供一组工具,用于设计时在
10、窗体中放置控件。除了缺省的工具箱布局之外,还可以通过从快捷菜单中选定“添加选项卡”并在结果选项卡中添加控件来创建自定义布局。,列出当前工程中的窗体和模块。工程是指用于创建一个应用程序的文件的集合。,列出选定窗体和控件的属性设置值。属性是指对象的特征,如大小、标题或颜色。,IDE,的元素,窗体设计器,代码编辑器窗口,对象浏览器,窗体布局窗口,立即窗口,本地和监视窗口,作为自定义窗口用来设计应用程序的界面。在窗体中添加控件、图形和图片来创建所希望的外观。应用程序中每一个窗体都有自己的窗体设计器窗口。,是输入应用程序代码的编辑器。应用程序的每个窗体或代码模块都有一个单独的代码编辑器窗口。,列出工程中
11、有效的对象,并提供在编码中漫游的快速方法。可以使用“对象浏览器”浏览在,VB,中的对象和其它应用程序,查看对那些对象有效的方法和属性,并将代码过程粘贴进自己的应用程序。,Form Layout window,允许使用表示屏幕的小图象来布置应用程序中各窗体的位置。,这是一个附加窗口,主要是为调试应用程序提供的。但也可直接执行某些命令。,这些附加窗口是为调试应用程序提供的。它们只在,IDE,之中运行应用程序时才有效。,第二章 数据与表达式,应用程序:,由一条或多条语句构成。,每个语句:,由单词、表达式构成,。,单词、表达式:,由一些字符组成,。,“,语法单位,”:字符、词汇、表达式、,语句、过程、
12、函数等,“,语法规则,”:语法单位的形成规则。,基本字符集和词汇集,2.1.1,字符集,字符,是构成程序设计语言的最小语法单位。,字符集:是程序设计语言约定的所有字符。,一、,基本字符集包括,数字,:,09,英文字母,:,AZ az,特殊字符,:,Space!,”,#$%&()*+-/,:;,=,?,_|,二、,VB,其他字符集,1,、控制字符,(,如,Enter,Esc,Ctrl+P,等,),2,、汉字,三、说明,(,AScII,码和汉字),print ABC;A+B+C,一个例子,除汉字外,所有符号均为英文符号,一、,基本字符集包括,数字,:,09,英文字母,:,AZ az,特殊字符,:,
13、Space!,”,#$%&()*+-/,:;,=,?,_|,二、,VB,其他字符集,1,、控制字符,(,如,Enter,Esc,Ctrl+P,等,),2,、汉字,三、说明,(,AScII,码和汉字),print ABC;A+B+C,一个例子,除汉字外,所有符号均为英文符号,词汇集,“,单词,”,:语言中具有独立意义的最基本结构。,“,词汇集,”,:由单词符号组成,包括:,运算符、界符、关键字、标识符、各类型常数,等。,例:,print x,xyz,0.125*2,运算符,算术运算符,:,+-*/Mod,字符串运算符,:,&+,比较运算符,:,=,逻辑运算符,:,Not And Or,Eqv I
14、mp Xor,界符,也称为间隔符,作用是分隔单词符号,C=A+B:print 0.4:s=a mod 3:w=g or u,1),除了用字母串表示的运算符外,其余运算符都可以作为界符;,2),其它界符:(),,;,%,:空格等,保留字,保留字,在语法上有固定的含义,是语言的组成部分,在代码编辑窗口输入时,,VB,能自动识别,例如:,Abs AddItem And As,p21,标识符,标识符,是用来标识由用户定义的常量、变量、控件、过程、函数、对象等,命名规则,由下划线、字母(不区分大小写)、数字组成,以字母开头,长度不超过,255,个字符,不能与,VB,的保留字同名,标识符,标识符,是用来标
15、识由用户定义的常量、变量、控件、过程、函数、对象等,命名规则,由下划线、字母(不区分大小写)、数字组成,以字母开头,长度不超过,255,个字符,不能与,VB,的保留字同名,数据类型,数据类型:决定数据所占空间大小、表示范围及处理数据的方法。,字符数据类型,String,(变长字符型),String*size,(定长字符型),字符串长度:字符数据中包含的字符个数(一个汉字算一个字符),字符串中字符的位置:从左至右,,1,开始,字符串的输出:界符“不输出,字符串中,字母是区分大小写的,空字符串、空串:“”连续两个双引号,数值数据类型,Integer,(整型),Long,(长整型),Byte,(字节
16、型),Single,(单精度型),Double,(双精度型),Currency,(货币型),整型,实型,浮点数,定点数,逻辑型,或称布尔型,Boolean,:,True False,逻辑型 到 数值型,True,:,-1,False,:,0,数值型 到 逻辑型,非,0,:,True,0,:,False,日期型,Date,日期型数据在计算机内以浮点形式存储,整数表示日期,小数表示时间,1.5 1899-12-31 12:00:00,-1.5 1899-12-29 12:00:00,0.75 1899-12-30 18:00:00,0.5 1899-12-30 12:00:00,0.25 1899
17、-12-30 6:00:00,日期型,Date,日期型数据在计算机内以浮点形式存储,整数表示日期,小数表示时间,1.5 1899-12-31 12:00:00,-1.5 1899-12-29 12:00:00,0.75 1899-12-30 18:00:00,0.5 1899-12-30 12:00:00,0.25 1899-12-30 6:00:00,数据类型概要,数据类型:决定数据所占空间大小、表示范围及处理数据的方法。,数据类型空间范围,Byte1 0,到,255,Boolean2 True,或,False,Integer2-32,768,到,32,767,数据类型空间数据类型空间,Lo
18、ng4,String*10+,实际长度,Single4,String,实际长度,Double8,Date8,Currency8,常量,定义:其值固定不变,意义:常量可以使程序更具可读性,以及易于修改。,分类:,分类,1,文字常量:,sfd,、,13.241,、,6.32E-9,、,#3/6/93#,符号常量:,PI(,3.14),、,vbComboDropdown(0),分类,2,系统常量:属于符号常量,用户常量:可为文字常量 或 符号常量,常量的使用,文字常量可直接使用,符号常量必须在说明后,才能使用(系统常量例外),常量的数据类型,字符型(,string,):,number of empl
19、oyee,、,25.87,、,true,数值型:范围,整型(,int,):,十进制:,-32768 32767,八进制:正数:,&O0&O77777,十六进制:正数:,&H0&H7FFF,常量的数据类型,长整型(,long,),十进制:,12&,、,-12&,八进制:,&o12&,、,-&o12&,、,&12&,十六进制:,&h12&,、,-&h12&,常量的数据类型,浮点型,单精度型(,single,):,1.1,、,.1,、,1.,、,1.1e9,双精度型(,double,):,1.1e9,、,1.1d9,、,定点型,货币型(,currency,):,123.4567,日期型(,Date,
20、):,#03-30-99#,、,#3-30-2001#,常量的数据类型,浮点型,单精度型(,single,):,1.1,、,.1,、,1.,、,1.1e9,双精度型(,double,):,1.1e9,、,1.1d9,、,定点型,货币型(,currency,):,123.4567,日期型(,Date,):,#03-30-99#,、,#3-30-2001#,常量类型说明符,常量的说明经常带有二义性,如:,34,:整型?长整型?单精度?双精度?,&H9d,、,&O72,:整型?长整型?,4.56,:单精度?双精度?货币型?,解决方法是在常量后加上以下类型说明符:,说明符意义说明符意义,%,整型,&,
21、长整型,!,单精度,#,双精度,货币,Const,语句,定义用于代替文字量的常数:,Const,constname,As,type,=,expression,constname,As,type,=,expression,描述,constname,常量名;遵循标准的变量命名约定,type,常量的数据类型:,Byte,、,Boolean,、,Integer,、,Long,、,Currency,、,Single,、,Double,、,Date,、,String,或,Variant,。,expression,文字、其它常数,或由除,Is,之外的任意的算术操作符和逻辑操作符所构成的任意组合。,如省略,A
22、s,type,子句,则常量的数据类型是最适合表达式的数据类型,变量,定义:变量对应内存中的存储单元。,特点:与常量相比,其值可变;,特性:每一个变量均有一个名字和数据类型,作用:通过名字,可临时存储和引用数据。,遵循标识符的命名规则,变量类型说明符,类型说明符可加在变量名的末尾,可标识变量的类型,说明符意义,%,整型,&,长整型,!,单精度,#,双精度,货币,$,字符串,例如:,I%,、,lk&,、,f!,、,cstr$,变量的隐式定义方式,所谓隐式定义,就是变量未经显示定义而直接使用,此时由,VB,来判断:如是该变量的第一次使用,则,VB,自动定义,隐式定义的变量名后,不能加类型说明符,缺点
23、:如果变量名拼错,会导致一个难以查找的错误。,变量的隐式定义方式,所谓隐式定义,就是变量未经显示定义而直接使用,此时由,VB,来判断:如是该变量的第一次使用,则,VB,自动定义,隐式定义的变量名后,不能加类型说明符,缺点:如果变量名拼错,会导致一个难以查找的错误。,Function SafeSqr(num),TempVal=Abs(num),SafeSqr=Sqr(TempVal),End Function,Function SafeSqr(num),TempVal#=Abs(num),SafeSqr#=Sqr(TempVal#),End Function,正确,错误,变量的显式定义方式,为了
24、避免写错变量名引起的麻烦,可规定,只要遇到一个未经明确声明的变量名,,VB,都发出错误警告。,如果要废弃隐式定义方式,采用显式定义方式:,方法一:模块级声明:,Option Explicit,方法二:在“工具”菜单中选取“选项”,单击“编辑器”选项卡,再复选“要求变量声明”选项。,变量的显示定义,Dim,语句,功能:定义变量并分配存储空间。,语法:,Dim,varname,As,type,描述:,Type,可为,Byte,、,Boolean,、,Integer,、,Long,、,Currency,、,Single,、,Double,、,Date,、,Variant,、,String,、,Str
25、ing*length,。,说明,所声明的每个变量都要声明类型。,Dim,语句示例,Dim a as integer,Dim b as single,c as single,Dim a%,Dim b!,c!,Dim e,f as date,可变类型变量,三种方式定义:,隐式定义,Dim varname,Dim varname as variant,可保存各种类型(数值型、字符型、日期型)的数据,使用灵活,但存在隐患,可变类型变量,三种方式定义:,隐式定义,Dim varname,Dim varname as variant,可保存各种类型(数值型、字符型、日期型)的数据,使用灵活,但存在隐患,动
26、态变量,在过程内部,用,Dim,语句说明及隐式说明的变量均为自动变量,特点:,自动变量一经说明,则分配存储单元,一旦过程结束,则回收其所占用的存储单元既:自动变量的生命周期与作用域是一致的,动态变量示例,Private sub command1_click(),Dim a%,A=100,Print a,Ennnd sub,Private sub command1_click(),Dim a%,A=200,Print a,Ennnd sub,静态变量,静态变量使用,Static,语句说明,语法:,Static,varname,As,type,说明:,一般静态变量在过程内说明,当过程结束时,其占用
27、的存储单元保留,当该过程再一次执行时,其值任然存在,还可继续使用,静态变量的生命周期与作用域不一致,静态变量示例,Private sub Form_click(),static a%,A=a+1,Print a=;a,Ennnd sub,If a=0 then a=1,变量的赋值,Let,语句,功能:将表达式的,值,赋给,变量,或,属性,。,语法:,Let,varname,=,expression,说明:表达式值的类型必须与变量类型兼容,即:,赋值兼容,例如:,Let i=1,i=1,I=i+1,s=s*i,变量的赋值,Let,语句,功能:将表达式的,值,赋给,变量,或,属性,。,语法:,Le
28、t,varname,=,expression,说明:表达式值的类型必须与变量类型兼容,即:,赋值兼容,例如:,Let i=1,i=1,I=i+1,s=s*i,赋值兼容,数值或可解释为数值的字符型数据可赋值给数值变量,字符型数据可赋值给字符型变量,字符串或数值表达式可赋值给,Variant,变量,反过来:任何除,Null,之外的,Variant,都可以赋给字符串变量,但只有当,Variant,的值可以解释为某个数时才能赋给数值变量。,不能将不可解释为数值的字符串表达式的值赋给数值变量,不能将数值表达式的值赋给字符串变量,运算符摘要,运算符表达了求值的一种的方法:,运算符描述,算术运算符 用来进行
29、数学计算的运算符。,比较运算符 用来进行比较的运算符。,连接运算符 用来合并字符串的运算符。,逻辑运算符 用来执行逻辑运算的运算符。,优先级,函数运算,算术运算,连接运算,比较运算,逻辑运算,括号先求值,算术运算符,乘幂双目,-,负号单目,*乘法双目,/,浮点除法双目,整数除法双目,Mod,取模、求余双目,+,加法双目,-,减法双目,优先级:从高到低,算术运算符,乘幂:当左操作数为负数时,右操作数必须是整数,(-3)3=-27,整数除法:,先对操作数取整并四舍五入,再对结果去掉小数部分,3.6 1.8=2,取模:,先对操作数取整并四舍五入,余数的符号与左操作数相同,16 mod 3=1,-16
30、 mod 3=-1,p34,算术表达式示例,3+2*7,(3+2)*7,10*-5,11 mod 4/2,(11 mod 4)/2,1+(2+3)*2)*2,15/5*2,15 5*2,27 1/3,27 (1/3),17,35,-50,1,1.5,21,5.6,1,9,3,算术表达式示例,3+2*7,(3+2)*7,10*-5,11 mod 4/2,(11 mod 4)/2,1+(2+3)*2)*2,15/5*2,15 5*2,27 1/3,27 (1/3),17,35,-50,1,1.5,21,5.6,1,9,3,比较运算符,expression1,comparisonoperator,e
31、xpression2,小于,大于,=,大于等于,不等,优先级均相同,数值比较:按照数值大小比较,字符串比较:按照,ASCII,码比较,应避免对浮点数进行等于比较,X,是否在区间,a,b,之内时,a,xb,:,a=x and x=b,比较运算符,举例,Dim Var1,Var2,45 4 ,返回,True,。,Var1=5:Var2=4,Var1 Var2 ,返回,True,。,连接运算符,&,双目:用来强制两个表达式作字符串连接。,expression1&expression2,expression1+expression2,描述,结果是:,String,或,Variant,变量。,说明,如果
32、,expression,不是字符串,则将其转换成,String,变体。,如果两个表达式都是字符串,则结果的数据类型是,String,;否则,result,是,String,变体。,连接运算符,举例,Hello&World,返回,Hello World,Check&123&Check,返回,Check 123 Check,Hello+World,返回,Hello World,Check +123+Check,返回,Check 123 Check,+,:作为连接运算符使用,容易与算术加法相混淆,故:一般不用“,+”,连接字符串,运算符,Not,result,=Not,expression,Expr
33、essionresult,TrueFalse,FalseTrue,Dim A,B,C,Check,A=10:B=8:C=6,Check=not(A B),Check=not(B A),Check=not(C D),运算符,Not,result,=Not,expression,Expressionresult,TrueFalse,FalseTrue,Dim A,B,C,Check,A=10:B=8:C=6,Check=not(A B),Check=not(B A),Check=not(C D),运算符,Not,result,=Not,expression,Not,还能改变变量的位值,并根据下表设
34、置,result,中相应的位:,expression,位,result,位,0 1,1 0,Dim A,B,C,Check,A=10:B=8:C=6,Check=not A,Check=not B,Check=not C,运算符,Or,result,=,expression1,or,expression2,Expression1Expression2result,True True True,True False True,False True True,False False False,Dim A,B,C,Check,A=10:B=8:C=6,Check=A B or B C,Check=
35、B A or B C,Check=C B or B A,运算符,Or,result,=,expression1,or,expression2,or,还能改变数值表达式的位值,并根据下表设置,result,中相应的位:,Expression1Expression2result,0 00,011,101,111,Dim A,B,C,Check,A=10:B=8:C=6,Check=A or B,Check=B or C,Check=C or A,运算符,And,result,=,expression1,and,expression2,Expression1Expression2result,Tru
36、e True True,True False False,False True False,False False False,Dim A,B,C,Check,A=10:B=8:C=6,Check=A B and B C Check=B A and B C Check=A B and B D,运算符,And,result,=,expression1,and,expression2,and,还能改变数值表达式的位值,并根据下表设置,result,中相应的位:,Expression1Expression2result,0 00,010,100,111,Dim A,B,C,Check,A=10:B=
37、8:C=6,Check=A and B,Check=B and C,Check=A and C,运算符,And,result,=,expression1,and,expression2,and,还能改变数值表达式的位值,并根据下表设置,result,中相应的位:,Expression1Expression2result,0 00,010,100,111,Dim A,B,C,Check,A=10:B=8:C=6,Check=A and B,Check=B and C,Check=A and C,常用内部函数,内部函数的一般格式:,(,参数表,),说明:,在参数表中,若有多个参数,则参数之间用逗号
38、分隔,函数与变量、常量一样,可参与计算。,内部函数的分类,算术类,字符类,转换类,日期、时间类,其它类,数学类函数,正弦函数,Sin(number),余弦函数,Cos(number),正切函数,Tan(number),绝对值函数,Abs(number),指数函数,Exp(number),自然对数函数,Log(number),数学类函数,平方根函数,Sqr(number),符号函数,Sgn(number),取整函数,Fix(number),Fix,函数仅返回参数的整数部分,Fix(1.2),、,Fix(-1.2),Int(number),Int,函数返回不超过参数的最大整数,Int(1.2),、
39、,Int(-1.2),数学类函数,随机函数:,Rnd(number),Rnd,函数返回在半开区间,0,1),内的随机小数:,当,number0,或 省略,number,,产生下一个随机数,当,number=0,,产生最近一个随机数,当,number string1,的长度,0,在,string1,中找到,string2,找到的位置,在,string1,中找不到,string20,InStr,函数举例,Dim A$,B$,A=XXpXXpXXPXXP,被搜索的字符串,B=PX,要查找字符串,P,Instr(4,A,B,1),返回值,6,Instr(A,B),返回值,3,Instr(1,A,B,0
40、),返回值,9,Instr(1,A,B),返回值,9,InStr,函数举例,Dim A$,B$,A=XXpXXpXXPXXP,被搜索的字符串,B=PX,要查找字符串,P,Instr(4,A,B,1),返回值,6,Instr(A,B),返回值,3,Instr(1,A,B,0),返回值,9,Instr(1,A,B),返回值,9,转换函数,Asc,Asc,函数:,Asc(,string,),:,功能:返回字符串中首字母的,ASCII,码,Asc(A),返回,65,Asc(a),返回,97,Asc(Apple),返回,65,Asc(0),返回,48,转换函数,Chr,Chr,函数:,Chr(,char
41、code,),:,功能:返回与指定的,ASCII,码相关的字符。,Chr(65),返回,A,。,Chr(97),返回,a,。,Chr(48),返回,0,。,Chr(37),返回,%,。,转换函数,Hex,Hex,函数:,Hex(,number,),功能:对任何有效的数值表达式或字符串表达式,返回代表十六进制数值的最多可到八个十六进制字符的,String,。,说明:如果,number,不是一个整数,则先四舍五入成最接近的整数。,Hex(5),返回“,5”,Hex(5.3),返回“,5”,Hex(10),返回“,A”,Hex(459),返回“,1CB”,转换函数,Oct,Oct,函数:,Oct(,
42、number,),功能:对任何有效的数值表达式或字符串表达式,返回代表八进制数值的最多可到,11,个八进制字符的,String,。,说明:如果,number,不是一个整数,则先四舍五入成最接近的整数。,Oct(4),返回,4,。,Oct(4.8),返回,5,。,Oct(8),返回,10,。,Oct(459),返回,713,。,转换函数,Str,Str,函数:,Str(,number,),功能:对任何有效的数值表达式,返回相应的,String,说明:当一数字转成字符串时,总会在前头保留一空位来表示正负。如果,number,为正,返回的字符串包含一前导空格暗示有一正号。,Str(459),返回,4
43、59,Str(-459.65),返回,-459.65,Str(459.001),返回,459.001,转换函数,Str,Str,函数:,Str(,number,),功能:对任何有效的数值表达式,返回相应的,String,说明:当一数字转成字符串时,总会在前头保留一空位来表示正负。如果,number,为正,返回的字符串包含一前导空格暗示有一正号。,Str(459),返回,459,Str(-459.65),返回,-459.65,Str(459.001),返回,459.001,转换函数,Val,Val,函数:,Val(string),功能:返回包含于字符串内的数字。,说明:,首先过滤空白、制表符和换
44、行符。,从最左开始识别,当遇到不是数字的第一个字符为止。,Val(2457),返回,2457,Val(2 45 7),返回,2457,Val(24 and 57),返回,24,Val(1615 198th Street N.),返回,1615198,时间类函数,Date(),:返回系统日期,Dim MyDate,MyDate=Date MyDate,的值为系统当前的日期。,Now(),:返回系统日期和系统时间,MsgBox,函数,在对话框中显示消息,等待用户单击按钮,并返回一个,Integer,告诉用户单击哪一个按钮。,MsgBox(prompt,buttons,title),描述,Promp
45、t,:字符串表达式,作为显示在对话框中的消息。,prompt,的最大长度大约为,1024,个字符。如果,prompt,的内容超过一行,则可以在每一行之间用回车符,(Chr(13),、换行符,(Chr(10),或是回车与换行符的组合,(Chr(13)&Chr(10),将各行分隔开来。,MsgBox,函数,Buttons,:指定显示按钮的数目及形式,使用的图标样式,缺省按钮是什么以及消息框的强制回应等。如果省略,则,buttons,的缺省值为,0,。,Title,:在对话框标题栏中显示的字符串表达式。如果省略,title,,则将应用程序名放在标题栏中。,MsgBox,函数,buttons,参数,常
46、量 值 描述(,显示按钮),vbOKOnly 0 OK,VbOKCancel 1 OK,及,Cancel,VbAbortRetryIgnore 2 Abort,、,Retry,及,Ignore,VbYesNoCancel 3 Yes,、,No,及,Cancel,VbYesNo 4 Yes,及,No,VbRetryCancel 5 Retry,及,Cancel,MsgBox,函数,buttons,参数,常量 值 描述(,显示按钮),vbOKOnly 0 OK,VbOKCancel 1 OK,及,Cancel,VbAbortRetryIgnore 2 Abort,、,Retry,及,Ignore,
47、VbYesNoCancel 3 Yes,、,No,及,Cancel,VbYesNo 4 Yes,及,No,VbRetryCancel 5 Retry,及,Cancel,MsgBox,函数,buttons,参数,常量 值 描述(,显示图标),VbCritical 16 Critical Message,VbQuestion 32 Warning Query,VbExclamation 48 Warning Message,VbInformation 64 Information Message,注意:可组合这些常量作为,buttons,参数,MsgBox,函数,返回值,常数 值 描述,vbOK
48、1 OK,vbCancel 2 Cancel,vbAbort 3 Abort,vbRetry 4 Retry,vbIgnore 5 Ignore,vbYes 6 Yes,vbNo 7 No,RGB,函数,返回一个代表颜色的,Long,整数。,RGB(red,green,blue),描述,Red,:,Integer,。表示颜色的,红色,成份。,Green,:,Integer,。表示颜色的,绿色,成份。,Blue,:,Integer,。表示颜色的,兰色,成份。,说明,传给,RGB,的任何参数的值,如果超过,255,,会被当作,255,。,RGB,函数,常见的标准颜色,颜色 红色值 绿色值 兰色值,
49、黑色,0 0 0,兰色,00 255,绿色,0 255 0,青色,0 255 255,红色,255 0 0,洋红色,255 0 255,黄色,255 255 0,白色,255 255 255,表达式,运算符、常数、文字值、函数、列名、控件和属性的任意组合,其结果为一个单一的值。,类型,算术表达式:,字符表达式:,关系表达式:,逻辑表达式:,表达式,运算符、常数、文字值、函数、列名、控件和属性的任意组合,其结果为一个单一的值。,类型,算术表达式:,字符表达式:,关系表达式:,逻辑表达式:,表达式的一般执行顺序,从左至右进行计算,能够计算的先计算,先做括号内,再做括号外,函数运算或字符串连接运算,
50、算术运算,关系运算,逻辑运算,例如:,21+a 3 8/2+3.41/x 2*sin(30/180*3.14),表达式举例,设,a=2,b=3,c=4,d=5,求下列表达式的值及运算顺序,A b and c c,3 2*b ot a=c and bc or cd,Not a a+c,第二章,VISUAL BASIC,编程基础,第三章,VISUAL BASIC,编程基础,用对象能做什么,对象可提供现成代码,省却书写麻烦。例如:,可以自己创建打开文件和保存文件的对话框,但实际上大可不必。,取而代之的是利用,VB,提供的,CommonDialog,控件(一个对象)。,用户也能撰写日程管理和资源管理的
©2010-2025 宁波自信网络信息技术有限公司 版权所有
客服电话:4008-655-100 投诉/维权电话:4009-655-100