《第二章 面向对象编程基础.ppt》由会员分享,可在线阅读,更多相关《第二章 面向对象编程基础.ppt(20页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、Visual BasicVisual Basic程序设计程序设计第第2 2章章 面向对象编程基础面向对象编程基础王绍清王绍清Visual BasicVisual Basic程序设计程序设计第2章 面向对象编程基础本章内容:本章内容:v对象和控件对象和控件v控件的属性和方法控件的属性和方法v控件的事件控件的事件v程序设计步骤程序设计步骤本章重点:本章重点:VBVB控件的属性、方法和事件控件的属性、方法和事件本章难点:本章难点:类、对象、属性、事件、方法的概念类、对象、属性、事件、方法的概念Visual BasicVisual Basic程序设计程序设计一、对象、类的概念一、对象、类的概念1.1.
2、对象对象v对象是具有特殊属性和行为方式(方法)的实体,对象是具有特殊属性和行为方式(方法)的实体,如窗体、各种如窗体、各种控件等。控件等。v类是一个抽象的概念,是用来创建对象的模板,它包括所创建对类是一个抽象的概念,是用来创建对象的模板,它包括所创建对象的状态描述和方法定义,而对象只是类的一个实例。象的状态描述和方法定义,而对象只是类的一个实例。2.2.常用的对象类型常用的对象类型v窗体窗体v控件控件v数据库数据库v外部程序提供的对象外部程序提供的对象v自定义对象:由自定义对象:由自定义类产生的对象自定义类产生的对象3.3.描述对象的三个基本要素描述对象的三个基本要素属性、事件和方法属性、事件
3、和方法是描述对象的三个基本要素是描述对象的三个基本要素2.1 对象和控件Visual BasicVisual Basic程序设计程序设计4.4.给对象命名给对象命名v对象名称在属性窗口中的对象名称在属性窗口中的“名称名称”栏指定。栏指定。v窗体或控件对象在设计时窗体或控件对象在设计时VB会自动提供一个缺省的名称。会自动提供一个缺省的名称。v对象名称在同一作用域内必须保证唯一性。对象名称在同一作用域内必须保证唯一性。v对象命名最好表示数据的含义,并加一个前缀来表示对象的类型。对象命名最好表示数据的含义,并加一个前缀来表示对象的类型。如:如:frmMainfrmMain、cmdOpencmdOpe
4、n、textAddresstextAddress等。等。5.5.对象的属性对象的属性v对象有不同的特征,特征就是属性。每种属性有属性名称和特定对象有不同的特征,特征就是属性。每种属性有属性名称和特定对象的属性值。比如对象的属性值。比如姚明姚明的的身高身高为为226cm226cmv指定或修改对象的属性值:指定或修改对象的属性值:对象名对象名.属性名称新设置的属性值属性名称新设置的属性值 form1.Caption=form1.Caption=“欢迎欢迎”v获取对象的属性值:获取对象的属性值:对象名对象名.属性名称属性名称 form1.Captionform1.Caption2.1 对象和控件Vi
5、sual BasicVisual Basic程序设计程序设计2.1对象和控件6.6.对象的事件对象的事件v 事件是可被对象识别的动作。由事件是可被对象识别的动作。由VB预先定义好赋予对象,不可预先定义好赋予对象,不可更改。如更改。如 Load、Click、Activate等。等。7.7.对象的方法对象的方法v方法就是可以对对象执行的操作。它是系统提供的一种特殊函数方法就是可以对对象执行的操作。它是系统提供的一种特殊函数或过程,用于完成某种特定功能。或过程,用于完成某种特定功能。比如窗体可以移动,就是一个比如窗体可以移动,就是一个move方法,如何移动,就是该方法的参数方法,如何移动,就是该方法
6、的参数。事实上,方法就好事实上,方法就好比一个函数或过程。如比一个函数或过程。如 Move、Setfocus等。等。v方法的使用方法的使用对象名对象名.方法名方法名参数列表参数列表示例:form1.move 0,0 form1.move 0,0 移动窗体到屏幕左上角移动窗体到屏幕左上角Visual BasicVisual Basic程序设计程序设计2.1对象和控件二、二、VBVB中的控件中的控件内部标准控件内部标准控件 VBVB工具箱中列出的控件。如文本工具箱中列出的控件。如文本框、命令按钮等。框、命令按钮等。ActiveXActiveX控件控件 即外部控件。不自动显示在工即外部控件。不自动显
7、示在工具箱中,一般以扩展名为具箱中,一般以扩展名为.ocxocx的文件独立存在,使用时进行的文件独立存在,使用时进行加载。如通用对话框、多媒体加载。如通用对话框、多媒体控件等。控件等。Visual BasicVisual Basic程序设计程序设计2.2 控件的属性和方法一、控件的属性一、控件的属性名称名称NameName属性属性v控件的名称由属性窗口中的控件的名称由属性窗口中的“(名称)(名称)”确定确定。v每个对象都有一个唯一的名称,每个对象都有一个唯一的名称,即所有控件都有此属性即所有控件都有此属性v对象的名称对象的名称只能在属性窗口中设只能在属性窗口中设定定,不能在程序中修改。,不能在
8、程序中修改。v在程序中,需要使用对象的名称在程序中,需要使用对象的名称来引用对象。来引用对象。Visual BasicVisual Basic程序设计程序设计2.2 控件的属性和方法Height,Width,Left,TopHeight,Width,Left,Top属性属性vLeft:返回或设置控件左边与其容器返回或设置控件左边与其容器左边之间的距离左边之间的距离vTop:返回或设置控件顶部与其容器返回或设置控件顶部与其容器顶边之间的距离顶边之间的距离vWidth:返回或设置控件的宽度返回或设置控件的宽度vHeight:返回或设置控件的高度返回或设置控件的高度 注意:注意:这里所指的都是相对于
9、容器的坐标,这里所指的都是相对于容器的坐标,而不是屏幕的绝对坐标而不是屏幕的绝对坐标v坐标单位为坐标单位为twip(缇缇)v1 twip=1/567cm Visual BasicVisual Basic程序设计程序设计2.2 控件的属性和方法ForeColorForeColor、BackColorBackColor、FontFont属性属性vForeColor:返回或设置:返回或设置在控件内显示的图片和在控件内显示的图片和文本的前景颜色文本的前景颜色vBackColor:返回或设置:返回或设置控件的背景颜色控件的背景颜色vFont:返回或设置控件:返回或设置控件的文字字体的文字字体Visual
10、 BasicVisual Basic程序设计程序设计使用颜色常量使用颜色常量vvbBlackv vbBluev vbGreenv VbRedv vbWhitev VbYellowv vbcyan(青色青色),v vbMagenta(紫红色紫红色)使用使用RGBRGB(R,G,BR,G,B)函数)函数v格式:格式:RGB(R,G,B)vR(红)、(红)、G(绿)、(绿)、B(蓝)(蓝)取值在取值在0255,如黄色为,如黄色为(255,255,0)程序中设置颜色,有两种方法程序中设置颜色,有两种方法Visual BasicVisual Basic程序设计程序设计2.2 控件的属性和方法多个与字体有
11、关的控件属性多个与字体有关的控件属性vFontName(字体名)(字体名)Form1.FontName=“黑体黑体”vFontSize(字体大小)(字体大小)Form1.FontSize=24vFontBold(是否加粗)(是否加粗)Form1.FontBold=TruevFontItalic(是否斜体)(是否斜体)、FontUnderline(是否加下划线)、是否加下划线)、FontStrikethru(是否加删除线)(是否加删除线)vFont属性属性是一个对象类型是一个对象类型,字体的各种定义也可由该对象的不同,字体的各种定义也可由该对象的不同属性来控制,如:属性来控制,如:Form1.F
12、ont.Name=“黑体黑体”Form1.Font.Size=12Form1.Font.Bold=TrueVisual BasicVisual Basic程序设计程序设计2.2 控件的属性和方法与控件的值有关的属性与控件的值有关的属性v Caption 返回或设置窗体和控件的标题返回或设置窗体和控件的标题 Frame、Label、OptionButton、CheckBox、CommandButton等控件有此属性。等控件有此属性。vText Textbox,List,ComboBox等控件使用该属性设置控件的动等控件使用该属性设置控件的动态文本。态文本。通常有通常有Text属性时,也会有属性时
13、,也会有SelText、SelStart,SelLength属属性。性。v Value CommandButton、CheckBox、OptionButton控件使用控件使用该属性记录控件的状态。该属性记录控件的状态。Visual BasicVisual Basic程序设计程序设计2.2 控件的属性和方法EnabledEnabledv返回或设置控件是否可用。取值为返回或设置控件是否可用。取值为 True(可用)(可用)或或 False(不可(不可用,呈灰色)用,呈灰色)v示例:示例:Command1.Enabled=FalseVisibleVisiblev 返回或设置控件是否可见,取值为返回或
14、设置控件是否可见,取值为 True(可见)(可见)或或 False(不(不可见)可见)v示例:示例:Command1.Visible=FalseTabIndexTabIndex v设置设置TabTab键的顺序,该属性决定控件在一个窗体中的输入顺序,取键的顺序,该属性决定控件在一个窗体中的输入顺序,取值为整型。值为整型。TabStopTabStop v设该值决定是否可以通过设该值决定是否可以通过TAB键将焦点从上一个焦点移动当前控键将焦点从上一个焦点移动当前控件。取值为件。取值为 True(可以移动焦点)(可以移动焦点)或或 False。Visual BasicVisual Basic程序设计程
15、序设计2.2 控件的属性和方法二、控件的方法二、控件的方法方法的使用形式方法的使用形式:对象对象.方法方法 参数参数MoveMove方法:方法:移动控件,或改变控件大小移动控件,或改变控件大小格式:对象名格式:对象名.Move Left ,Top,Width,Heightv后三个参数是可省略的后三个参数是可省略的v使用该方法比直接对属性赋值效率要高使用该方法比直接对属性赋值效率要高v举例:举例:Command1.move 0,0,2000,1000SetFocusSetFocus方法:方法:使控件获得焦点。使控件获得焦点。格式:对象名格式:对象名.setfocusv如果控件无效或不可见,使用该
16、方法会出错。如果控件无效或不可见,使用该方法会出错。v一般通过窗体的一般通过窗体的Activate事件设置焦点。事件设置焦点。v举例:举例:Text1.setfocusVisual BasicVisual Basic程序设计程序设计2.2 控件的属性和方法三、窗体常用的方法三、窗体常用的方法 除除MoveMove方法外,窗体还有以下常用方法:方法外,窗体还有以下常用方法:PrintPrint方法方法:输出表达式的值。表达式之间可以用逗号:输出表达式的值。表达式之间可以用逗号(紧凑形式输出)或分号(标准形式输出)隔开。(紧凑形式输出)或分号(标准形式输出)隔开。举例:举例:Me.print 3*
17、2,52ClsCls方法方法:清除窗体上显示的内容:清除窗体上显示的内容举例:举例:Me.clsShowShow方法方法:显示窗体:显示窗体举例:举例:Me.ShowHideHide方法方法:隐藏窗体:隐藏窗体举例:举例:Me.HideVisual BasicVisual Basic程序设计程序设计2.3 控件的事件事事 件件:预先定义好的、能够被对象识别的动作。:预先定义好的、能够被对象识别的动作。事件过程事件过程:为响应特定事件而执行的指令,是窗体的代码:为响应特定事件而执行的指令,是窗体的代码部分。部分。事件过程的一般格式如下:事件过程的一般格式如下:Private Sub 对象名称对象
18、名称_事件名称()事件名称()事件响应程序代码事件响应程序代码End subVisual BasicVisual Basic程序设计程序设计VB控件通用事件 Click:Click:单击事件单击事件 DblClickDblClick:双击事件双击事件 KeyPressKeyPress(参数参数):当按下键盘上的一个当按下键盘上的一个ASCIIASCII字符键时,触发该事件。字符键时,触发该事件。注意:在控制键中,注意:在控制键中,KeyPressKeyPress事件只能识别:事件只能识别:EnterEnter、TabTab、SpaceSpace、BackspaceBackspace等几个键。等
19、几个键。Private Sub Text1_KeyPress(KeyAscii As Integer)Private Sub Text1_KeyPress(KeyAscii As Integer)print KeyAscii End Sub KeyDownKeyDown(参数)(参数)和和KeyUPKeyUP(参数)(参数)键盘中任意键只要按下,就产生键盘中任意键只要按下,就产生KeyDown事件,松开时产生事件,松开时产生KeyUp事件,有键值和控制键状态两个参数。事件,有键值和控制键状态两个参数。ChangeChange事件事件当控件的的值发生改变时会引发该事件,包括文本框、组合列表框、当
20、控件的的值发生改变时会引发该事件,包括文本框、组合列表框、滚动条、驱动器和目录列表等。滚动条、驱动器和目录列表等。Visual BasicVisual Basic程序设计程序设计VB控件通用事件6.6.MouseMoveMouseMove(参数)(参数)当鼠标在控件上移动时,引发该事件当鼠标在控件上移动时,引发该事件7.7.MouseDownMouseDown (参数)和(参数)和MouseUPMouseUP (参数)(参数)鼠标任何键按下和松开会产生鼠标任何键按下和松开会产生MouseDown和和MouseUp事件事件8.8.GotFocusGotFocus和和LostFocusLostFo
21、cusv当控件接受到输入焦点时,引发当控件接受到输入焦点时,引发GotFocus事件事件v当控件失去输入焦点时,引发当控件失去输入焦点时,引发LostFocus事件事件 举例:设置文本框举例:设置文本框Text1Text1的的GotFoucusGotFoucus事件,当事件,当Text1Text1获得焦点时,自获得焦点时,自动清空动清空Private Sub Text1_GotFocus()Text1.Text=End SubVisual BasicVisual Basic程序设计程序设计2.4 2.4 程序设计步骤程序设计步骤 分析问题,确定程序要完成什么任务,按下面的步骤创建应用程序:分析
22、问题,确定程序要完成什么任务,按下面的步骤创建应用程序:(1 1)新建工程(创建一个应用程序首先要打开一个新的工程)新建工程(创建一个应用程序首先要打开一个新的工程)(2 2)在该工程中添加窗体,设计界面)在该工程中添加窗体,设计界面(3 3)编写代码)编写代码(4 4)程序运行与调试(重复)程序运行与调试(重复2 2、3 3步)步)(5 5)编译程序,产生程序最后的)编译程序,产生程序最后的EXEEXE执行文件执行文件(6 6)生成安装包)生成安装包(外接程序(外接程序外接程序管理器外接程序管理器打包和展开向导打包和展开向导选中选中“加载加载”后后“确定确定”。或者。或者直接利用直接利用VBVB中文版工具中的中文版工具中的“Package&DeploymentPackage&Deployment向导向导“)程序举例程序举例:欢迎界面欢迎界面 求圆的面积求圆的面积Visual BasicVisual Basic程序设计程序设计课后作业课后作业完成课后的作业完成课后的作业编写编写“求圆的面积求圆的面积”的的VBVB程序程序,并编译成并编译成EXEEXE文件文件