VB基础教程入门全篇精讲课件

上传人:艳*** 文档编号:242973832 上传时间:2024-09-13 格式:PPT 页数:266 大小:2.54MB
返回 下载 相关 举报
VB基础教程入门全篇精讲课件_第1页
第1页 / 共266页
VB基础教程入门全篇精讲课件_第2页
第2页 / 共266页
VB基础教程入门全篇精讲课件_第3页
第3页 / 共266页
点击查看更多>>
资源描述
,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,单击此处编辑母版标题样式,Visual Basic,程序设计,(6.0,版,),皖南医学院计算机教研室,毕迎春,课程要求,期末考核要求:,理论考试,期末评分比例:,平时成绩,30 % +,期末成绩,70 %,2,第一章,Visual Basic,程序设计概述,1.1,概述,1.2,运行环境、安装和启动,1.3 VB,集成开发环境,3,1.1,概述,一、,VB,简介:,Visual Basic,是,基于,Basic,的可视化的程序设计语言。,Visual Basic 6.0,中文版是,Microsoft,公司最新推出的可视化开发工具,是一种基于,Windows,操作系统的新型的现代程序设计语言,是一种易于学习、功能强、效率高的编程工具。任何具有初步程序设计基础的人,都能在很短的时间内掌握好,VB,,,并有效地编写出各种,Windows,程序。,VB6.0,包括三个版本:学习版、专业版、企业版,4,二、,VB,主要功能特点:,1.,具有,面向对象,的,可视化,设计工具,2.,事件驱动,的编程机制,3.,提供了,易学易用,的应用程序集成开发环境,4.,结构化,的程序设计语言,5.,支持,多种数据库,系统的访问,6.OLE,技术。,VB,核心,就是其对对象的链接与嵌入(,OLE,),的支持。,7.Active,技术,8.,完备的,help,联机帮助功能,三、,VB6.0,新功能特点,5,1.2,运行环境、安装和启动,一、运行环境:,二、安装:,安装文件:,setup.exe,三、启动:,方法:,1,、双击桌面,VB,快捷方式。,2,、“开始”程序,Microsoft Visual Studio 6.0| Microsoft Visual Basic 6.0,3,、 “,开始”运行,C:program files Microsoft Visual Studio VB98VB6.exe,6,进入,VB6.0,窗口,7,1.3 VB,集成开发环境,8,1.,主窗口,应用程序窗口,由标题栏、菜单栏和工具栏组成,VB,的三种工作模式,(标题栏总显示当前模式),(,1,)设计模式:,创建应用程序的大多数工作都是在设计时完成的。在设计时,可以设计窗体、绘制控件、编写代码并使用“属性”窗口来设置或查看属性设置值。,(,2,)运行模式:,代码正在运行的时期,用户可与应用程序交流。可查看代码,但不能改动它。,(,3,)中断模式:,程序在运行的中途被停止执行时。在中断模式下,用户可查看各变量及不是属性的当前值,从而了解程序执行是否正常。还可以修改程序代码,检查、调试、重置、单步执行或继续执行程序。,9,2.,窗体,(Form),设计窗口,窗体设计窗口是屏幕中央的主窗口,它可以作为自定义窗口用来设计应用程序的界面。用户可以在窗体中添加控件、图形和图片来创建所希望的外观。每个窗口必须有一个的窗体名字,建立窗体时缺省名为,Form1,Form2, . . .,。,窗体网格点间距的设置:设计模式,-”,工具,”,”,选项,”,应注意窗体名(代码中使用的标识对象名称)和窗体文件名的区别,10,窗体设计窗口,窗体名,窗体文件名,11,3.,代码,(code),窗口,在设计模式中,通过双击窗体或窗体上任何对象或通过“工程资源管理器”窗口中的“查看代码”按钮来打开代码编辑器窗口。代码编辑器是输入应用程序代码的编辑器。,代码窗口主要包括:,a.,对象列表框,b.,过程列表框,c.,代码框,d.,过程查看按钮,e.,全模块查看按钮,12,13,4.,属性,(properties),窗口,属性是指对象的特征,如大小、标题或颜色等数据。在,Visual Basic6.0,设计模式中,属性窗口列出了当前选定窗体或控件的属性的值,用户可以对这些属性值进行设置。,14,工程是指用于创建一个应用程序的文件的集合。工程资源管理器列出了当前工程中的窗体和模块,5.,工程资源管理器,(project explorer),窗口,15,工程文件的扩展名为,.VBP,工程资源管理器下面的列表窗口,以,层次列表形式,组成这个工程的所有文件。,主要包括三种类型的文件:,窗体文件(,.FRM,),存储窗体上使用的所有控件对象和有关的属性、对象相应的事件过程、程序代码。,标准模块文件(,.BAS,),所有模块级变量和用户自定义的通用过程(可以被应用程序各处调用的过程),类模块文件(,.CLS,),包含用户对象的属性及方法。,16,工具箱提供一组工具,用于设计时在窗体中放置控件生成应用程序的用户接口。系统启动后缺省的,General,工具箱就会出现在屏幕左边,上面有常用“部件”,6.,工具箱,(,ToolBox,),窗口,17,定制工具箱,添加选项卡:,对添加的选项卡加控件的方法:,(,1,)在已有的选项卡中拖动所需控件,(,2,) 激活选项卡,-”,工程”,-“,部件”,18,窗体布局窗口显示在屏幕右下角。用户可使用表示屏幕的小图像来布置应用程序中各窗体的位置。这个窗口在多窗体应用程序中很有用,因为这可以指定每个窗体相对于主窗体的位置。,7,窗体布局窗口,19,立即窗口:,中断模式中调试应用程序。,对象浏览窗口:,可查看工程定义的模块或过程,也可查看对象库、类型库、类、方法、属性及可在过程中使用的常数。,20,第二章 简单的,VB,程序设计,2.1,程序设计方法的发展,2.2,对象的概念,2.3,建立简单的应用程序,2.4,窗体和基本控件,2.5,工程的管理及环境设置,2.6,制作成安装盘,2.7,使用帮助系统,21,2.1,程序设计方法的发展,1.,初期的程序设计,高运行效率、少占用内存为目标,2.,结构化程序设计,程序的可读性、可维护性为目标,程序,=,算法,+,数据结构 的面向过程的程序设计,3.,面向对象的程序设计(,OOP,),降低程序的复杂性、提高软件的开法效率和改善工作界面为目标,程序,=,对象,+,消息 的面向对象的程序设计,22,结构化的分解突出过程(,How to do?,),面向对象的分解突出真实世界和抽象的对象(,What to do?,),目前常用的面向对象语言有,:,Visual Basic,、,Visual C+,、,Visual FoxPro,等,优点,a.,符合人们的思维方法,b.,易于软件的维护和功能的增减,c.,能用继承的方式减短程序开发时间,d.,与可视化技术结合,改善了工作界面,23,2.2,对象的概念,一、对象和类,1,、类,:是创建对象实例的模板,是同种对象的集合与抽象,包含了创建对象的属性描述和行为特征的定义,.,2,、对象,:,是类的一个实例,继承了类的属性、方法。,Vb,中常用的对象有:窗体、控件等。,3,、控件:,以图标的形式放在工具箱中。,VB,中的控件分为三类:,内部控件(标准控件):,如工具箱上的控件,,20,个,ActiveX,控件:,“工程,/,部件”命令加载,可插入对象:,Windows,应用程序的对象,如,Excel,工作表。,二、对象的建立和编辑:,1,、,对象的建立:两种方法,2,、对象的选定:单选、多选,3,、复制或删除对象,4,、对象的命名,24,三、对象的三要素:属性、事件和方法,(,1,)属性,对象的性质,即用来描述和反映对象特征的参数。,(,2,)事件,对象的响应称为事件,它发生在用户与应用程序交互时。如单击控件、鼠标移动、键盘按下等。,事件过程,指附在该对象上的用户编写的程序代码,是事件的处理程序。,事件驱动过程,是图形用户界面的本质,由用户控制而代码作出响应。,25,VB,程序执行步骤:,启动应用程序,装载和显示窗体,窗体(或窗体上的控件)等待事件的发生,事件发生时,执行对应的事件过程,重复执行(,2,)和(,3,),直到遇到“,END”,结束语句结束程序的运行或单击“结束”按钮强制停止程序的运行,26,(,3,)方法,对象的动作,即将一些通用的过程编写好并封装起来,作为方法供用户直接调用。,对象方法的调用格式:,对象,.,方法,参数名表,例如:,在窗体上显示一行文字。,Form1.Print ”,欢迎使用,Visual Basic6.0”,27,2.3,建立简单的应用程序,设计一个,VB,应用程序的通用步骤:,1.,设计用户界面的对象,2.,设置对象的属性,3.,编写对象事件代码,4.,保存文件,5.,程序运行和调试,(,解释执行:,或 “运行,|,启动”,或,按,F5,),6.,建立可执行文件。,(,编译运行:“文件”,|,“,生成,exe,”,),28,例,2.1,编写一个对输入字符进行转换的程序,转换规则为:将其中的大写字母转换成小写字母,小写字母转换成大写字母,空格不转换,其余转换成“*”。,要求每输入一个字符,马上就进行判断和转换。,29,Private Sub Text1_KeyPress(KeyAscii As Integer),Dim,aa,As String * 1,aa,=,Chr$(KeyAscii,),Select Case,aa,Case a To z,aa,=,Chr$(KeyAscii,- 32),Case A To Z,aa,=,Chr$(KeyAscii,+ 32),Case ,Case Else,aa,= *,End Select,Text2.Text =,Text2.Text,&,aa,End Sub,30,Private Sub Command1_Click(),Text1.Text = ,Text2.Text = ,End Sub,Private Sub Command2_Click(),End,End Sub,31,2.3.4,保存和运行程序,保存窗体文件,保存工程,程序的运行,(,1,)编译运行模式,生成,.exe,(,2,)解释运行模式,F5,32,2.4,窗体和基本控件,一、基本属性,1.Name,名称属性,创建的对象名称,有默认的名,.,在程序中,控件名是作为对象的标识而引用,不会显示在窗体上。,2.Caption,标题属性,该属性决定了控件上显示的内容。,3.Height,、,width,、,top,和,left,属性,33,4.Enabled,属性,控件是否可操作,.,当设置为,false,时,呈暗淡色,禁止用户进行操作,.,5.Visible,属性,控件是否可见,.,当设置,为,false,时,用户看不到,但控件本身存在。,6.Font,属性,Fontname,字体,Fontsize,字体大小,Fontbold,是否是粗体,Fontitalic,是否斜体,Fontstrikethru,是否加一删除线,Fontunderline,是否带下划线,例,2.2,在窗体上建立两个命令按钮,Command1,和,Command2,,,Command2,的,Font,通过属性窗口设置, 其余属性,通过代码实现。,34,7.,Forecolor,前景颜色属性,设置控件的前景颜色(即正文颜色,).,其值是一个,16,进制常数,用户可以在调色板中直接选择所需颜色。,8.,Backcolor,背景颜色属性,9.,Backstyle,背景风格属性,0-transparent,:,透明显示,即控件背景颜色显示不出来,10.,BorderStyle,边框风格属性,0-None,:,控件周围没有边框,1-Fixed Single,:,控件带有单边框。,11. Alignment,属性,控件上正文水平对齐方式,0:,正文左对齐,1:,右对齐,2:,居中,12.,AutoSize,属性,控件是否根据正文自动调整大小,False,.,35,13.,MousePointer,属性,指示鼠标指针的类型,当为,99,时为用户自定义类型。,MouseIcon,属性,设置鼠标的图标,当,MousePointer,为,99,时起作用。图标库在,Graphics,目录下,扩展名一般为,.,ico,或,.cur,14.WordWarp,属性,为,True,时水平方向上下发生变化。,15.TabIndex,属性,决定了按,Tab,键时,焦点在各个控件移动的顺序。各个控件默认的,TabIndex,值就是控件建立时的顺序,第一个为,0.,16.,控件默认属性,反映该控件最重要的属性,使用时可省略属性名。,如:,Text1.text=“Welcome”,与,Text1=“Welcome”,是等价的。,部份控件默认值,:,文本框的为:,Text,命令按钮为:,Default,标签为:,Caption,单选,/,复选按钮为:,Value,图形,/,图像框为:,Picture,注意,:,Command,的,Default,为,True,,,当按,Enter,键,该控件起作用。,36,例,:,有关属性的综合应用。,对象设置:,效果:,37,二、窗体,1.,属性,:P27,StartUpPosition,、,Icon,、,ControlBox,MaxButton,、,MinButton,WhatsThisButton,、,WhatsThisHelp,Picture,、,AutoRedraw,BorderStyle,(,0 1,2,3 4 5,),WindowsState,(,0,-,正常、,1-,最小化、,2-,最大化),注,:,1,、,Picture,属性,可在属性窗口设置,也可通过,Loadpicture,函数用代码来实现。函数格式为:,对象,.Picture=,Loadpicture,(“,文件路径,文件名”,),对象可以是窗体、图片框、图像框,缺省时为窗体。,VB,可以识别的图形格式有:,.bmp .gif .jpg .,wmf,.,ico,.cur,等。,2,、,两者的不同在于,:属性设置时设置的图片 ,会被保存起来并与窗体同时加载,而运行时加载的图片,不和应用程序一起保存。,38,2.,事件:,P28,Click,、,DblClick,、,Load,、,UnLoad,等,Load,当装入窗体时激发,通常用于,对属性和变量初始化,3.,方法:,P28,Print,、,Cls,、,Move,、,Show,、,Hide,等,当在,Form_Load,事件中使用,Print,方法时,必须将该窗体的,AutoRedraw,设置为,True,,,否则,Print,方法无效。,例,上述属性、,Click,、,DblClick,和,Load,事件演示。,书上例子:,P28,39,三,.,标签,Label,1,、,功能: 用于显示文本,(,输出,),信息,,不能作为输入信息的界面,。,2,、属性:,P29 3,、,事件:,click,、,Dblclick,、,Change,例,2.5.,显示浮雕效果的文字,实现方法:字颜色、标签位置,书上例子:,P29,四,.,文本框,TextBox,功能: 是一个文本编辑区域,可以输入,编辑和显示正文内容。,1,、属性:,P30,Text :,正文内容,Maxlength,:,设置正文的最多字符个数,0,任意长度值,.,MultiLine,:,是否为多行,默认一行,.,FALSE,ScrollBars,:,当,MultiLine,为,True,时,该属性才有效,表示滚动条的形式,0-None,、,1-Horizontal,、,2-Vertical,、,3-Both,。,Locked:,是否可被编辑属性,,False,,,表示为可编辑。,PassWordchar,:,口令字符.,Text,属性返回输入的数据,屏幕显示该字符,SelStart,,,SelLength,,,SelText,:,选中文本的起始、长度、内容。,例,2.6,复制选中的文本,40,2.,常用事件,Change :,当改变文本框的,Text,属性时会引发该事件,.,KeyPress(KeyAscii,As Integer):,同上,并可返回一个,KeyAscii,参数,KeyAscii,为,13,按回车键,;,为,0,去除刚输入的字符,.,LostFocus,:,当控件失去焦点时发生,.,GotFocus,:,当控件获得焦点时发生,.,3.,常用方法,对象,.,SetFocus,:,是把光标移到指定的文本框对象中,(,即设置焦点,),。,4.,文本框的应用 数据过滤,例,2.7,要求输入合法的数字数据。当输入结束时(按,Tab,键),对于输入正确的数据,显示正确信息;对输入的非数字数据,则响铃,(Beep),、,显示错误信息、清除文本框中的内容,并使焦点重新回到文本框。,Text2_,LostFocus,当输入结束按,Tab,键时,该事件激发,IsNumeric(Text2) :,判断是否输入非数字数据,.,Text2.SetFocus :,使焦点重新回到文本框,书上例子:,P32,41,五,.,命令按钮,CommandButton,功能:接受用户输入的命令。,输入命令可以有三种方式:,鼠标单击,Tab,键焦点到该按钮 快捷键,1. 属性:P33,Caption:,命令按钮显示的内容,可设置快捷键,例,&Ok ,显示,O,k,Value:,检查该按钮是否按下,.,该属性在设计时无效,.,Picture :,按钮可显示图片文件,(.bmp,和,.,Ico,),,当,Style,为,1,时有效,Style :,确定显示的形式,.,0,只能显示文字, 1,文字、图形均可 。,ToolTipText,:,设置工具提示,和,Picture,结合使用。,2.,事件,Click,42,3.,应用,:,例,2.8,建立一个允许剪切、复制和粘贴的简单便笺板程序。,可增加内容:利用,MouseMove,事件决定命令按钮的有效性,即当选中内容,“剪切”、“复制”按钮有效,否则无效。,43,Dim,st,As String,Private Sub,cmdcopy_Click,(),st,=,txtnoteedit.SelText,cmdcopy.Enabled,= False,cmdcut.Enabled,= False,cmdpaste.Enabled,= True,End Sub,Private Sub,mdcut_Click,(),st,=,txtnoteedit.SelText,txtnoteedit.SelText,= ,cmdcopy.Enabled,= False,cmdcut.Enabled,= False,cmdpaste.Enabled,= True,End Sub,Private Sub,cmdexit_Click,(),End,End Sub,Private Sub,cmdpaste_Click,(),txtnoteedit.SelText,=,st,End Sub,Private Sub,Form_Load,(),cmdcopy.Enabled,= False,cmdcut.Enabled,= False,cmdpaste.Enabled,= False,End Sub,44,Sub,txtnoteedit_MouseMove(Button,As Integer, Shift As Integer, X As Single, Y As Single),If,txtnoteedit.SelText, Then,cmdcopy.Enabled,= True,cmdcut.Enabled,= True,cmdpaste.Enabled,= False,Else,cmdcopy.Enabled,= False,cmdcut.Enabled,= False,cmdpaste.Enabled,= True,End If,End Sub,45,六、常用方法,Vb,中使用方法的语法结构是相同的,对象,.,方法,参数列表,1.print,方法,形式:,对象,.,printspc(n)|tab(n,),表达式列表,作用:在对象上输出信息。,对象:可以是窗体,(form),、图形框,(,picturebox,),、打印机。若省略,则在窗体上输出。,46,表达式列表开始位置是由对象的,currentx,和,currenty,属性决定的,缺省为打印对象的左上角,0,,,0,。,例,2-9,:,print,方法输出图形。,Private Sub,Form_Click,(),Form1.CurrentX = 200,Form1.CurrentY = 550,For i = 1 To 5,Print,Tab(i,+ 5); String(6 - i, ); _,Spc(6);,String(i, ),Next i,End Sub,47,2,、,cls,方法,形式:,对象,.,cls,(如:,picture.cls,),作用:用于清除运行时在窗体或图形框中显示的文本或图形。,注意:,(,1,),cls,方法只清除运行时在窗体或图形框中显示的文本或图形,不清除窗体在设计时的文本或图形。,(,2,),cls,方法使用后,,currentx,和,currenty,属性被设置为,0,。,48,3,、,move,方法,形式:,对象,.move,左边距离,上边距离,,宽度,,高度,作用:,用于移动窗体或控件,并可改变其大小。,对象:,可以是窗体及除时钟、菜单外的所有控件,省略对象为窗体。如果对象是窗体,则“左边距离,”,和“上边距离”以屏幕左边界和上边界为准,否则以窗体的左边界和上边界为准,宽度和高度表示可改变其大小。,49,例,2-10,Private Sub,Form_Load,(),Image1.Top = 0,Image1.Left = 0,Image1.Picture =,LoadPicture(App.Path,+ 1.gif),End Sub,Private Sub Image1_Click(),Image1.Move (Form1.Left + Form1.Width) 2 -,Form1.Left,(Form1.Top + Form1.Height) 2 - Form1.Top,Image1.Width 2, Image1.Height 2,End Sub,50,七、应用举例,例,2-11,:根据房产商提供的信息,购房者选择房型、面积、单价、按揭期等信息,编写计算每月支付贷款的程序。,程序由两个窗体构成,第一个窗体输入或选择买房的数据,该窗体由列表框选择数据、标签显示数据、文本框输入数据;第二个窗体显示房屋的平面图,该窗体仅有一个图形控件。,51,2.5,工程的管理,一、工程的组成,工程文件包含了一个应用程序的所有文件,:,工程文件,(.,vbp,),:,工程组文件,(.,vbg,):,窗体文件(,.,frm,),:,控件及属性、事件过程和自定义过程,窗体的二进制数据文件(,.,frx,),自动产生同名,.,frx,文件。,标准模块文件(,.bas,),类模块文件(,.,cls,),资源文件(,.,res,),ActiveX,控件的文件(,.,ocx,),二、创建、打开和保存工程:“文件”菜单,52,三,.,添加、删除和保存文件:,可利用“文件”和“工程”菜单,1,、窗体名和窗体文件名概念,窗体名,:窗体的,Name,属性,,在代码中用来引用该窗体,同一,工程不能有相同的窗体名;,窗体文件名,:窗体存放在磁盘上的文件名,该文件包含了该窗体的所有控件属性和代码,同一文件夹不能有相同的文件名。,2,、,在工程中,添加,现存的,窗体,时,只是对该,窗体,文件的引用纳入工程。因此,如果更改,窗体,并保存它,会影响包含此,窗体,文件的任何工程。,3,、,在工程中,删除,窗体,时,仅将此,窗体,从工程里删除掉,但是,窗体文件,仍存在于磁盘上。但是,如果在,VB,之外删除一个,窗体,文件,,VB,不能更新此工程文件,当打开此工程时,将显示一个文件丢失的错误信息。,窗体文件名,窗体名,53,四、环境设置,“工具”,”,选项”,1.”,编辑器”选项卡,2,、“通用”选项卡,4,、对窗体文件,改名,方法:,在“工程资源管理器”中,-,右击窗体文件,-“Form,另存为,”,5,、,保存,窗体文件:,若只想保存窗体文件而不保存工程文件,可直接在“工程资源管理器”中选定,然后执行“文件”菜单中的相应选项。,54,2.6,制作成安装盘,2.6.1,使用打包和展开向导,打包:,把工程中用到的各种类型的文件(包括工程自身的文件、必要的系统文件和安装主文件)进行打包压缩后,存放到特定的目录下。,展开:,把打包的文件展开到用户可以携带的用来安装的软盘、光盘等介质。,管理脚本:,记录打包或展开过程中的设置,便于以后做同样的操作。,系统的压缩文件以,.cab,扩展名保存。,2.6.2,检测安装程序,55,第三章,VB,语言基础,3.1,编码基础,3.2,数据类型,3.3,常量与变量,3.4,运算符和表达式,3.5,基本语句,3.6,数组,3.7,过程,3.8,常用算法举例,3.9,程序调试,56,3.1,编码基础,一、书写要求:,1.VB,代码不区分字母的大小写,系统关键字自动转换每个单词的首字母大写;,用户自定义行以第一次为准,2.,语句书写自由,一行可书写几个语句,之间用,冒号,分隔;一行最多,255,个字符;,一条语句可分若干行书写,用,续行符,(,空格,+,下划线,),连接,3.,注释有利于程序的维护和调试,Rem,或 单撇号“,” 以及“编辑”工具栏的“,设置注释块,”;,VB,中注释语句会自动变为绿色,4.,保留行号与标号,5.,其他注意事项:,保留字与变量之间至少有一空格;,字母“,l”,与数字“,1”,、字母“,o”,与数字“,0”,的使用。,57,3.2,数据类型,一、,标准数据类型:,58,1,、数值数据类型:,Integer Long Single Double Currency Byte,(1)Integer,和,Long,型用于保存整数,(2)Single,和,Double,型用于保存浮点实数,(3)Currency,型是定点实数或整数,(4)Byte,字节型用于存储二进制数,59,2,、,日期(,Date,)数据类型,按,8,字节浮点数来存储。,日期范围:公元,100,年,1,月,1,日,9999,年,12,月,31,日,时间范围:,0:00:00 23:59:59,表示方法:一般日期形式前后加来表示,另一种是以数字序列表示日期和时间,(,1,)一般日期表示法:使用成对,#,将任何可被认作日期和时间的字符括起来。公元年份默认,19,年,因而填入,1995,年与填入,95,年效果一样,但年的部分输入,029,间的数字,则,VB,自动转换为,20 ,年。例如:,#5/25/24#,与,#5/25/2024#,等价。,而,#5/25/95#,,,#May 25,95#,,,#May-25-95#,,,#25 May 1995#,,,#1995 May 25#,等均为合法日期格式。,60,(2),数字序列表示法,数字序列是双精度的浮点数,由,VB,自动解释。序号的整数部分表示日期,小数部分表示时间。,在,VB,中,基准日期为公元,1899,年,12,月,30,日,,这一天的整数部分为,0,,比基准早的日期序号为负数,比其晚的日期序号为正数,,其取值范围为,657434,(公元,100,年,1,月,1,日)到,2958465,(公元,9999,年,12,月,31,日)。,小数部分:以某个时间点占一天,24,小时的比例表示。,如:,6:00 AM,会以,0.25,来表示。,-2.5,表示,1899-12-28 12:00:00,5.75,表示,1900-1-4 18:00:00,366.05,表示,1900-12-31 1:12:00,367.05,表示,1901-1-1 1:12:00,-367.05,表示,1898-12-28 1:12:00,61,3,、逻辑(布尔型)数据型:,Boolean,当逻辑型转换成整型数据时:,true (-1) false(0),当其他类型数据转换成逻辑数据时:,非,0,数转换为,true, 0,转换为,false,4,、,字符串型:,String,“”,5,、,对象数据类型:,Object,作为,32,位(,4,个字节)地址来存储,62,6,、变体类型:,Variant,是所有未定义的变量的缺省数据类型,它可以包括标准数据类型,还包含四个特殊的数据:,empty(,空,),表示未指定确定的数据,null(,无效,),表示数据不合法,Error(,出错,),指出过程中出现了一个错误条件,Nothing(,无指向,),表示数据还没有指向一个具体对象,Vartype,:,检测变体型变量中保存的数值类型,如:,dim t,Vartype(t,),或,Vartype(667),63,二、自定义类型,让用户自己定义的数据类型,由若干个标准数据类型组成。是一组不同类型变量的集合。相当于,C,语言中的结构类型;,Pascal,中的记录类型。,1.,自定义类型的定义,形式如下:,Type,自定义类型名,元素名,(,下标,) As,类型名,元素名,(,下标,) As,类型名,End Type,其中:,元素名:表示自定义类型中的一个成员,下标:表示数组,类型名:为标准类型,64,例如,以下定义了一个有关学生信息的自定义类型:,Type,StudType,No As Integer,学号,Name As String * 20,姓名,Sex As String * 1,性别,Mark(1 To 4) As Single 4,门课程成绩,Total As Single,总分,End Type,注意:,(1),自定义类型一般在,标准模块,(.BAS),中定义,默认是,Public,;,在窗体必须是,Private,。,(2),自定义类型中的元素类型可以是字符串,但应是,定长字符串,。,(3),不要将自定义类型名和该类型的变量名混淆,前者表示了如同,Integer,、,Single,等的类型名,后者,VB,根据变量的类型分配所需的内存空间,存贮数据。,(4),自定义类型一般和数组结合使用,简化程序的编写。,65,2,自定义类型变量的声明和使用,(1),声明形式:,Dim,变量名,As,自定义类型名,例,Dim Student As,StudType,(2),引用:,形式:变量名,.,元素名,例 表示,Student,变量中的姓名,第,4,门课程的成绩,则表示如下:,Student,.,Name,,,Student,.,Mark(4),(3),赋值:,如:,Student.Name=“,王刚”,Student.Mark(4)=98,66,3.3,常量与变量,一,.,常量和变量的命名规则,常量:在程序运行中其值不可以改变。,变量:在程序运行中其存储的值可以改变。,命名规则:,1.,以字母或汉字开头,后可跟汉字、字母、数字或下划线组,合,长度小于等于,255,个字符;,2.,不能使用,VB,中的关键字;,3.VB,中不区分变量名的大小写,.,4.,为了增加程序的可读性,可在变量名前加一个缩写的前缀来表明该变量的数据类型,。如:,strMystring,、,intCount,67,VB6.0,的关键字有:,As Binary,ByRef,ByVal,Date Else Empty Error False For Friend Get Input Is Len Let Lock Me Mid New Next Nothing Null On Option Optional,ParamArray,Print Private Property Public Resume Seek Set Static Step String Then Time To True,WithEvents,68,二,.,常量,(,一,),直接常量,有数值常量,(,整数、长整数、定点数和浮点数,),、字符串常量、布尔常量、日期常量,(,二,),符号常量,1.,系统提供的常量,系统定义常量位于对象库中,可通过“对象浏览器”查看,.,例:,vbNormal,、,vbMinimized,、,vbMaximized,、,vbblue,等,form1.windowsstate=,vbmaximized,将窗口极大化,form1.windowsstate=2,与上面的语句等价的,69,2.,用户声明常量,形式:,Const,常量名,AS,类型, =,表达式,省略,AS,类型,,常量的类型由表达式值的类型决定,也可在常量后加类型符。,表达式:,可以是数值常数、字符串常数以及由运算符组成的表达式。对于数值常数除了可用十进制表示外,还可以使用十六进制数,(,数值前加,&H,),和八进制数,(,数值前加,&O,),。,为使与变量名区分,一般常量名使用大写字母,例,Const MAX=100,Const PI=3.14159,Const PI#=3.14159,Const MAX as integer=&O144,70,三,.,变量,1.,用,Dim,语句显式声明变量,形式:,Dim,变量名,AS,类型,Dim,变量名类型符,例,Dim,iCount,As integer ,sAllsum,As single,等价于,Dim,iCount,%,sAllsum,!,对于字符串变量,根据其长度是否固定,有两种方法:,Dim,字符串变量名,As String,Dim,字符串变量名,As String*,字符数,2.,隐式声明,未进行上述的声明而直接使用,其类型为,Variant,类型。,建议不使用。,注意,:,在通用声明处加,Option Explicit,语句可强制显式声明变量。,71,3.4,运算符和表达式,一,.,运算符,1.,算术运算符,例:,5+10 mod 10 9 / 3 +2 2,结果:,10,取,ia,=3,72,2.,字符串运算符,:,、,+,“,”,和,“,+”,,,都是将两个字符串拼接起来。, 123 + 456 ,结果, 123456 , 123 & 456 ,结果, 123456 ,区别,:,若,+,的两旁的操作数均为数值型则进行算术加;若一个为数字字符型,另一个为数值型,则自动将数字字符转换为数值,然后进行算术加;若一个为非数字字符型,另一个为数值型,则出错。,&,则不管什么类型,强制转换为字符型进行拼接。,例如,: ,abcdef,&,12345 ,结果为,abcdef12345 ,abcdef,+,12345 ,出错,123,&,456 ,结果为, 123456 , 123 ,+,456 ,结果为,579,12000,+,“123” & 100 ,结果为“,12123100”,Val(left$(“12345678”,4),+,mid$(“12345678”,4,2) ,结果为,123445,注意:,(,1,),123 + True ,结果为,122,True,转换为数值,-1,,,False,转换为数值,0,(,2,)使用“”时,最好在两侧的操作数间加入一个空格。因为,Long,类型变量,的类型符以及八进制、十六进制数值表示法的起始字符也为“”。,73,3,关系运算符,将两个操作数进行大小比较,结果为逻辑量。,(1),关系运算符的优先级相同;,(2)“Like”,运算符与通配符:“,?”,、“*”、“,#”,、“,字符列表,”,、“,!,字符列表,”,结合使用,常用于模糊查询。其中“,?”,表示任何单一字符,“*”表示零个或多个字符,“,#”,表示任何一个数字,(09),,,字符列表,表示字符列表中的任何单一字符,,!,字符列表,表示不在字符列表中的任何单一字符。例如,找姓名变量中姓张的学生,则表达式为:姓名,Like “,张*” ,又如找没有张字的学生,表达式为:姓名,Like “!,张,”,74,4.,逻辑运算符,说明:,1,、,Not,:,进行取反运算;,2,、,And,:,操作数均为真时,结果才为真;,3,、,Or,:,操作数中有一个为真时,结果为真;,4,、,Xor,:,操作数相反时,结果才为真;,5,、,Eqv,:,操作数相同时,结果才为真;,6,、,Imp,:,第,1,个操作数为真,第,2,个为假时,结果才为假,其余结果均为真。,7,、优先级:,NotAndOR,Xor,Eqv,Imp,75,如果逻辑运算符对数值进行运算,则以数字的二进制值逐位进行逻辑运算。,(1)And,运算符常用于屏蔽某些位。,(2)Or,运算符常用于把某些位置,1,。,(3),连续两次进行,Xor,运算,可恢复原值。,例:,10 and 7,10 or 7,76,二,.,表达式,1.,表达式,组成,变量、常量、函数、运算符和圆括号,2.,书写规则,(1),运算符不能相邻。例,a+ -b,是错误的。,(2),乘号不能省略。例,x,乘以,y,应写成:,x*y,(3),括号必须成对出现,均使用圆括号。,(4),表达式从左到右在同一基准上书写,无高低、大小。,3.,不同数据类型的转换,运算结果的数据类型向精度高的数据类型靠,.,IntegerLongSingleDouble,字符运算符,关系运算符,逻辑运算,77,表达式书写举例,sin(45*3.14/180)+(exp(10)+log(10)/sqr(x+y+1),a*b*c*d/e/f/g,或,a*b *c*d/,(,e*f*g,),78,例:用人单位招聘秘书:年龄小于,40,岁的女性,学历专科或本科,年龄,40,性别,=“,女”,(,学历,=“,专科” 学历,=“,本科”,),And,And,Or,比,a,小,比,b,大 用,Or,a,小数,b,大数,a,小数,b,大数,比,a,大,比,b,小 用,And,例:表示算术表达式:,正确的,VB,表达式:,3=x And x =7,错误的,VB,表达式:,3=x=7,或,3=x Or x=7,考虑:若分别写成:,年龄,40 And,性别,=“,女”,And (,学历,=“,专科”,And,学历,=“,本科”,),年龄,40 Or,性别,=“,女”,Or (,学历,=“,专科”,Or,学历,=“,本科”,),79,1.,数学函数,:,Rnd,函数返回,0,和,1,(包括,0,但不包括,1,)之间的双精度随机数,.,例:产生,1100,的随机整数:,Int(Rnd,*100)+1,产生,1003000,的随机整数:,Int(Rnd,*2901)+100,随机产生“,A” “Z”,的字符:,Chr(Int(Rnd,*26+65),注意:,(1),产生一定范围内的随机整数通常表示为:,Int(Rnd,*,范围,)+,基数 或,Int(Rnd,*,范围,+,基数,),(2),每次运行时,要产生不同序列的随机数,执行,Randomize,语句。,Randomize number,注:,函数名后有,$,符号,表示函数返回值为字符串。,三、常用内部函数,80,2.,转换函数,Chr(66) B,Asc,(B) 66,Asc(Chr(99) 99,Chr(Asc(K,) K,Ucase$(abcdefg,) ABCDEFG“,3.,日期函数,:,Date,返回系统日期,Time,返回系统时间,Now,返回系统日期,和时间,Year,返回年份,(,1,),DateAdd,增减日期函数,(,2,),DateDiff,间隔日期函数,三、常用内部函数,81,4.,字符串编码及操作函数,(1),字符串编码,Windows,系统对字符采用了,DBCS,编码,中文,2,字节,西文,1,字节,VB,中字符,Unicode,编码,任何字符,2,字节,.,Len(“,中国,good”),为,6,LenB,(“,中国,good”),为,12,StrConv,(),进行,DBCS,与,Unicode,之间转换,.,(2),字符串函数,Mid$(ABCDEFG,2,3) BCD,InStr(2, “EFABCDEFG, EF) 7,注:,函数的自变量中有,M,,表示,M=0,区分大小写,,M=1,不区分,省略,M,区分大小写。,82,5.,格式输出函数,Format(),功能:,Format(),可以使数值、 日期或字符串按指定的格式输出。,格式:,Format(,表达式,格式字符串,),其中,表达式:为要格式化的数值、日期和字符串类型表达式。,格式字符串:表示按其指定的格式输出表达式的值。,格式字符串有三类:,(1),数值格式化:,将数值表达式的值按“格式字符串”指定的格式输出。,(2),日期和时间格式化,(3),字符串格式化,格式字符串要加双引号,83,84,6. Shell,函数,功能,:,Shell,函数负责执行一个可执行文件,(,扩展名为,.exe,、,.com,、,.bat),,,返回一个,Variant,,,如果成功,代表这个程序的进程,ID,,,若不成功,则会返回,0,。,形式,:,Shell(,命令字符串,窗口类型,),缺省窗口类型最小化为图标。,85,X=shell(“c:windowspbrush.exe”,1),Y=shell(“c:windowswrite.exe”,1),Z=shell(“C:Program FilesMicrosoft OfficeOfficewinword.exe”,1),提示:,如果不知道应用程序的路径名,可用,Start,命令启动程序,i = Shell(,start,& calc.exe),;,i = Shell(,start,& “vb6.exe“),举例:,i = Shell(c:windowscalc.exe ,1),j = Shell(c:, 1),86,3.5,基本语句,3.5.1,赋值语句,形式,:,LET,变量名表达式,作用,:,将表达式的值赋值给变量名,.,一般用于给变量赋值或对控件设定属性值,.,例,:,sRate,!=0.1,Text1.Text,欢迎使用,Visual Basic 6.0”,注意:,1,、,当表达式的类型与变量的类型不一致时,强制转换成左边的精度。如:,iA,% = 10 / 3,iA,中的结果为,3,2,、虽然赋值号与关系运算符等于号都用“,=”,表示,,VB,系统会根据所处的位置自动判断是何种意义的符号。,3,、赋值号左边只能是变量,不能是常量或表达式。,4,、不能在一句赋值语句中,同时给多个变量赋值。,87,3.5.2,人机交互函数和过程,VB,与用户之间的直接交互是通过,InputBox,(),函数、,MsgBox,(),函数和,MsgBox,过程进行的。,1.InputBox,函数,InputBox,(,提示,,标题,,缺省,,,x,坐标位置,,,y,坐标位置,),其中,:,提示,提示信息,,标题,对话框标题,,缺省,输入区缺省值,函数返回字符类型,.,例要在屏幕上显示图示的对话框,:,88,相应的语句如下,:,Dim,strName,As String * 40,strName,=,InputBox,( “,请输入你的姓名”,+,vbCrLf,+ “,然后单击确定”, “,输入框”,),也可以使用如下语句:,Dim,strName,As String * 40,,,strS1 As String * 40,strS1 = “,请输入你的姓名”,+ Chr(13) + Chr(10) + “,然后单击确定”,strName,= InputBox(strS1,, “,输入框”, ,,100,,,100),当键盘输入“王晓明” 后,变量,strName,获得键盘输入的值,.,89,2.,MsgBox
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > PPT模板库


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!