版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、VB程序设计程序设计第二章第二章 面向对象的编程基础面向对象的编程基础 本章知识点:本章知识点: 面向对象的程序设计技术概述;对象的概念、面向对象的程序设计技术概述;对象的概念、属性、方法和事件;属性、方法和事件;VB程序结构及事件驱程序结构及事件驱动编程机制;窗体与常用控件及其应用。动编程机制;窗体与常用控件及其应用。2.1 2.1 面向对象的程序设计技术概述面向对象的程序设计技术概述2.2 Visual Basic2.2 Visual Basic中的对象中的对象2.3 VB2.3 VB程序结构与事件驱动编程机制程序结构与事件驱动编程机制2.4 2.4 窗体与控件窗体与控件2.1 2.1 面
2、向对象的程序设计技术概述面向对象的程序设计技术概述 2.1.1 2.1.1 面向对象的概念面向对象的概念1 1类与对象类与对象 一个类描述一类事物,描述这些事物所具有的共同一个类描述一类事物,描述这些事物所具有的共同特征属性),即用类来抽象定义同类对象。一个对象特征属性),即用类来抽象定义同类对象。一个对象是类的一个实例,它具有确定的属性。是类的一个实例,它具有确定的属性。 参见下图:参见下图: 1 1个职工类具有姓名、性别、年龄、职个职工类具有姓名、性别、年龄、职业业. . .等共同属性,它属抽象类。无数具有确定属性的等共同属性,它属抽象类。无数具有确定属性的职工,如陈红、刘立、职工,如陈红
3、、刘立、.是职工类的实例对象)。是职工类的实例对象)。 2.1 2.1 面向对象的程序设计技术概述面向对象的程序设计技术概述 2.1.1 2.1.1 面向对象的概念面向对象的概念2 2对象的三要素对象的三要素 在面向对象的系统中,世界被看成是独立在面向对象的系统中,世界被看成是独立“对象的对象的集合。即属性、方法、事件构成一个对象的三要素。集合。即属性、方法、事件构成一个对象的三要素。属性属性 描述对象的特征描述对象的特征方法方法 反映对象动作的行为反映对象动作的行为事件事件 对象可能发生的一切活动对象可能发生的一切活动 如一个人作为对象有姓名、身高、体重等属性;有如一个人作为对象有姓名、身高
4、、体重等属性;有走路、思索、开车等行为;还有在一定条件下发生的事走路、思索、开车等行为;还有在一定条件下发生的事件。件。 2.1.2 2.1.2 面向对象的程序设计技术面向对象的程序设计技术1 1面向对象技术的基本特征面向对象技术的基本特征 封装性、继承性和多态性是面向对象程序设计技术的封装性、继承性和多态性是面向对象程序设计技术的三大特征。三大特征。 封装性封装性 封装就是把对象的属性和方法结合成一个不可分割的封装就是把对象的属性和方法结合成一个不可分割的独立单位。对象的属性值除公有的属性值只能由该独立单位。对象的属性值除公有的属性值只能由该对象的方法来读取和修改,与外部的联系只能通过外部对
5、象的方法来读取和修改,与外部的联系只能通过外部接口实现。接口实现。 数据封装和隐藏提供了一种对数据访问严格控制的机数据封装和隐藏提供了一种对数据访问严格控制的机制。例如,制。例如,VBVB中的类模块是支持数据封装的工具,它将中的类模块是支持数据封装的工具,它将数据和对该数据的操作封装在一起作为类的定义。类是数据和对该数据的操作封装在一起作为类的定义。类是一个整体,在这个整体中,一些成员被有效地屏蔽,以一个整体,在这个整体中,一些成员被有效地屏蔽,以防外界的干扰;另一些成员是公共的,它们作为公共接防外界的干扰;另一些成员是公共的,它们作为公共接口可与外界交换信息。口可与外界交换信息。 2.1.2
6、 2.1.2 面向对象的程序设计技术面向对象的程序设计技术1 1面向对象技术的基本特征面向对象技术的基本特征 继承性继承性 继承性是从已定义的类派生出新类的一种手段。通过继继承性是从已定义的类派生出新类的一种手段。通过继承可以对某定义的类进行细化,添加新的属性和方法,从而承可以对某定义的类进行细化,添加新的属性和方法,从而形成子类。这个类既有自己新定义的属性和行为,又有继承形成子类。这个类既有自己新定义的属性和行为,又有继承下来的属性和行为。下来的属性和行为。 见图所示:最顶部的人员类称为基类父类),从它派见图所示:最顶部的人员类称为基类父类),从它派生出的学生类和教师类称为派生类子类);以学
7、生类为基生出的学生类和教师类称为派生类子类);以学生类为基类又派生出研究生子类;助教类是以教师类和研究生类为基类又派生出研究生子类;助教类是以教师类和研究生类为基类派生出的子类。类派生出的子类。 作为继承的实例,作为继承的实例,Windows XPWindows XP操作系统是从操作系统是从Windows Windows 20002000操作系统派生出来。操作系统派生出来。2.1.2 2.1.2 面向对象的程序设计技术面向对象的程序设计技术1 1面向对象技术的基本特征面向对象技术的基本特征 多态性多态性 多态体现在系统中不同对象对同一消息作出不同的响应行多态体现在系统中不同对象对同一消息作出不
8、同的响应行为。即多个对象定义名称相同但完成不同任务的函数,并使为。即多个对象定义名称相同但完成不同任务的函数,并使用相同的调用方式来调用具有不同功能的同名函数。这种面用相同的调用方式来调用具有不同功能的同名函数。这种面向对象的特性称为多态性。向对象的特性称为多态性。 例如:利用多态性来处理显示不同类型的数据。父类例如:利用多态性来处理显示不同类型的数据。父类DATADATA定义了行为定义了行为showshow显示数据),派生于同一父类显示数据),派生于同一父类DATADATA的的子类:子类:INT(INT(整型整型) )、FLOAT(FLOAT(单精度单精度) )和和STRING(STRING
9、(字符串字符串) ) 既继既继承了父类的承了父类的ShowShow行为,又各自扩充了新功能。各子类对象接行为,又各自扩充了新功能。各子类对象接收到相同的收到相同的showshow消息后执行其类中同名的消息后执行其类中同名的showshow函数完成不函数完成不同任务)同任务), ,以显示不同类型的数据。以显示不同类型的数据。 2.1.2 2.1.2 面向对象的程序设计技术面向对象的程序设计技术2 2面向对象程序的工作原理面向对象程序的工作原理 从面向对象的角度看,程序是对象的集合;对象之间从面向对象的角度看,程序是对象的集合;对象之间的相互作用构成了一个软件系统。对象参与的交互动作的相互作用构成
10、了一个软件系统。对象参与的交互动作称为事件。通过事件,消息在对象之间发送,接收消息称为事件。通过事件,消息在对象之间发送,接收消息的对象调用相应的方法进行响应。面向对象程序的工作的对象调用相应的方法进行响应。面向对象程序的工作原理如图所示。原理如图所示。2.1.2 2.1.2 面向对象的程序设计技术面向对象的程序设计技术3 3面向对象的程序设计方法面向对象的程序设计方法 面向对象程序设计强调的是数据对象,建立层次化面向对象程序设计强调的是数据对象,建立层次化的对象体系。它是基于解决问题的业务逻辑,而不是基的对象体系。它是基于解决问题的业务逻辑,而不是基于具体的程序步骤。于具体的程序步骤。 综上
11、所述,面向对象的程序设计方法可以表示为:综上所述,面向对象的程序设计方法可以表示为: 面向对象面向对象 = = 对象对象 + + 类类 + + 承袭承袭 + + 消息通信消息通信 由此可见,面向对象的程序设计既使用对象又使用类由此可见,面向对象的程序设计既使用对象又使用类和继承机制,而且对象之间仅能通过消息实现彼此之间和继承机制,而且对象之间仅能通过消息实现彼此之间的通信。的通信。 2.2 Visual Basic2.2 Visual Basic中的对象中的对象 2.2.1 2.2.1 对象的概念对象的概念 VBVB的一个对象是指将数据和处理该数据的过程函的一个对象是指将数据和处理该数据的过程
12、函数和子程序捆绑在一起的一个程序部件。对象是具有数和子程序捆绑在一起的一个程序部件。对象是具有属性数据和行为方法的实体。属性数据和行为方法的实体。VBVB的对象分为两的对象分为两类:类:1 1预定义对象预定义对象 由系统设计好提供给用户使用,如窗体、控件、打印由系统设计好提供给用户使用,如窗体、控件、打印机、调试、剪贴板、屏幕等;机、调试、剪贴板、屏幕等;2 2用户建立对象用户建立对象 建立一个对象,就是新建窗体以及在窗体上绘制控件建立一个对象,就是新建窗体以及在窗体上绘制控件的过程;对象也可通过程序来建立,但必须由用户在程的过程;对象也可通过程序来建立,但必须由用户在程序中为对象命名。如窗体
13、序中为对象命名。如窗体Form1Form1,按钮,按钮( (控件控件)buttn)buttn等。等。 2.2 Visual Basic2.2 Visual Basic中的对象中的对象 2.2.2 2.2.2 对象的属性、方法和事件对象的属性、方法和事件 在在VBVB环境下建立一个对象后,其操作通过与该对环境下建立一个对象后,其操作通过与该对象有关的属性、方法和事件来描述。象有关的属性、方法和事件来描述。 1 1对象的属性对象的属性 属性属性PropertyProperty是描是描述对象特征的数据。如气述对象特征的数据。如气球属性有直径、颜色、外球属性有直径、颜色、外形形( (充气或未充气充气或
14、未充气) )、寿命、寿命等。等。2.2 Visual Basic2.2 Visual Basic中的对象中的对象 2.2.2 2.2.2 对象的属性、方法和事件对象的属性、方法和事件1 1对象的属性对象的属性 不同对象有不同的属性。不同对象有不同的属性。VBVB对象常见属性有标题对象常见属性有标题CaptionCaption)、控件名称)、控件名称NameName)、颜色)、颜色ColorColor)、字)、字体大小体大小FontsizeFontsize)、是否加粗)、是否加粗FondBoldFondBold)、是否可)、是否可见见VisibleVisible等。等。 可以通过修改对象的属性值
15、来改变对象的特征,设可以通过修改对象的属性值来改变对象的特征,设置对象的属性值有两种方式:置对象的属性值有两种方式: 利用利用“属性窗口设置对象的属性操作见属性窗口设置对象的属性操作见2.4.42.4.4) 在程序中设置对象的属性赋值语句)在程序中设置对象的属性赋值语句) 其语法格式:其语法格式: 对象名对象名.属性名属性名= =属性值属性值 2.2.2 2.2.2 对象的属性、方法和事件对象的属性、方法和事件1 1对象的属性对象的属性 读写对象的属性值读写对象的属性值 对象的大多数属性是可读取的,但不是所有的属性都对象的大多数属性是可读取的,但不是所有的属性都是可改写的。是可改写的。 例如,
16、在用户窗体例如,在用户窗体Form1Form1上有二个文本框控件,对象上有二个文本框控件,对象名分别为名分别为Text1Text1和和Text2Text2,该控件有一属性,该控件有一属性TextText,属性值,属性值则是文本框的显示内容。则是文本框的显示内容。 读写对象属性的赋值语句如下:读写对象属性的赋值语句如下: Text1.Text=Text1.Text=欢迎光临欢迎光临 (改写对象属性)(改写对象属性) Text2.Text=Text1.Text Text2.Text=Text1.Text (读取对象属性)(读取对象属性)2.2.2 2.2.2 对象的属性、方法和事件对象的属性、方法
17、和事件2 2对象的方法对象的方法 方法是描述对象行为的过程,指对象能执行的动作方法是描述对象行为的过程,指对象能执行的动作或功能,如显示或打印、绘图、移动等。或功能,如显示或打印、绘图、移动等。 对于对于VBVB预定义对象,其方法是封装在对象中用来操预定义对象,其方法是封装在对象中用来操作对象属性的代码段特殊的过程或函数),是不可见作对象属性的代码段特殊的过程或函数),是不可见和不可改写的。和不可改写的。 不同的对象有不同的方法不同的对象有不同的方法, ,有些方法可适用于多种类有些方法可适用于多种类型的对象,而有些方法只适用于几种对象。如大部分对型的对象,而有些方法只适用于几种对象。如大部分对
18、象具有方法象具有方法MoveMove移动位置),而按钮和文本框控件对移动位置),而按钮和文本框控件对象都具有方法象都具有方法SetFocusSetFocus将焦点移至指定对象)。将焦点移至指定对象)。 2.2.2 2.2.2 对象的属性、方法和事件对象的属性、方法和事件2 2对象的方法对象的方法 调用对象的方法:调用对象的方法: 其语法格式:其语法格式: 对象名对象名.方法名方法名 参数列表参数列表 例例1 1:在用户窗体:在用户窗体Form1Form1上有一名为上有一名为txtnametxtname的文本框控件,的文本框控件,用来输入用户名,调用方法用来输入用户名,调用方法MoveMove移
19、动文本框位置;调用方法移动文本框位置;调用方法SetFocusSetFocus将焦点光标移至文本框以便接收信息。将焦点光标移至文本框以便接收信息。 Txtname.Move 300,300 Txtname.Move 300,300 Txtname.SetFocus Txtname.SetFocus (将光标置于用户名框)(将光标置于用户名框) 例例2 2:使用方法:使用方法PrintPrint在当前窗体在当前窗体Form1Form1或打印机上输出字或打印机上输出字符串符串 欢迎使用欢迎使用VBVB。 Print Print “欢迎使用欢迎使用VBVB” (缺省对象为当前窗体(缺省对象为当前窗体
20、Form1Form1) Printer.Print Printer.Print “欢迎使用欢迎使用VBVB” (打印机对象名(打印机对象名PrinterPrinter)2.2.2 2.2.2 对象的属性、方法和事件对象的属性、方法和事件3 3对象的事件对象的事件(1)(1)事件事件 事件是事件是VBVB预先设置好的、能够被对象识别的动作,如预先设置好的、能够被对象识别的动作,如ClickClick单击)、单击)、DblClickDblClick双击)、双击)、MouseMoveMouseMove移动移动鼠标)、鼠标)、LoadLoad装入等。装入等。 不同的对象能识别的事件也不一样。例如,窗体
21、能识不同的对象能识别的事件也不一样。例如,窗体能识别装载别装载Load()Load()、单击、单击Click()Click()、活动、活动Activate()Activate()等事件;等事件;命令按钮能识别单击命令按钮能识别单击Click()Click()、双击、双击DblClick()DblClick()、获得焦、获得焦点点GotFocus()GotFocus()等事件。等事件。 事件一般发生在用户与应用程序交互时,如单击控件、事件一般发生在用户与应用程序交互时,如单击控件、键盘输入、移动鼠标等。也有部分事件是由系统触发,键盘输入、移动鼠标等。也有部分事件是由系统触发,如计时器事件、程序启
22、动时窗体加载如计时器事件、程序启动时窗体加载Form_Load(Form_Load()事件。)事件。 2.2.2 2.2.2 对象的属性、方法和事件对象的属性、方法和事件3 3对象的事件对象的事件(2)(2)事件过程事件过程 事件过程是对某个对象事件所执行的操作。响应某个事件过程是对某个对象事件所执行的操作。响应某个事件后所执行的操作是通过一段程序代码来实现的。事件后所执行的操作是通过一段程序代码来实现的。 一个对象可以识别一个或多个事件,因而可以拥有一一个对象可以识别一个或多个事件,因而可以拥有一个或多个事件过程。每个事件过程必须由用户或系统启个或多个事件过程。每个事件过程必须由用户或系统启
23、动相应事件后,才会执行该事件响应程序代码。动相应事件后,才会执行该事件响应程序代码。 事件过程的一般格式如下:事件过程的一般格式如下: Private sub Private sub 对象名称对象名称_ _事件名称事件名称()() 事件响应程序代码事件响应程序代码 End sub End sub 2.2.2 2.2.2 对象的属性、方法和事件对象的属性、方法和事件3 3对象的事件对象的事件(2)(2)事件过程事件过程 例如,以下事件过程例如,以下事件过程Command1_Click()Command1_Click()是单击命令按是单击命令按钮钮Command1Command1控件时所执行的操作
24、。控件时所执行的操作。 Private sub Command1_Click()Private sub Command1_Click() Text1.FontName= Text1.FontName=黑体黑体 Text1.ForeColor=vbRed Text1.ForeColor=vbRed Text1.Text= Text1.Text=欢迎使用欢迎使用VBVB End Sub End Sub 当用户单击命令按钮当用户单击命令按钮Command1Command1控件,将触发单击事件控件,将触发单击事件Command1_Click()Command1_Click(),从而执行该响应程序代码,
25、在,从而执行该响应程序代码,在Text1Text1文本框中显示文本框中显示 欢迎使用欢迎使用VB,VB,其字体为黑体,文字为红色。其字体为黑体,文字为红色。2.3 VB2.3 VB程序结构与事件驱动编程机制程序结构与事件驱动编程机制 2.3.1 VB2.3.1 VB程序的结构程序的结构 VB VB应用程序以应用程序以“对象为中心来设计模块,它通常对象为中心来设计模块,它通常由三种模块组成:窗体模块、标准模块和类模块。由三种模块组成:窗体模块、标准模块和类模块。 VBVB应用程序结构的三种模块应用程序结构的三种模块 可以通过可以通过“工程菜单中工程菜单中的的“添加窗体添加窗体”、“添加模块添加模
26、块”、“添加类模块来实现。添加类模块来实现。 参见右图,显示在工程窗参见右图,显示在工程窗口中的三种模块。口中的三种模块。 2.3 VB2.3 VB程序结构与事件驱动编程机制程序结构与事件驱动编程机制 2.3.1 VB2.3.1 VB程序的结构程序的结构1 1窗体模块窗体模块 窗体模块是指在窗体模块是指在VBVB工程中以工程中以.frm .frm 为文件扩展为文件扩展名的文件,其中包含窗体的图形描述;其控件以名的文件,其中包含窗体的图形描述;其控件以及控件的属性设置;事件过程和通用过程等。及控件的属性设置;事件过程和通用过程等。 一个应用程序包含一个或多个窗体模块。一个应用程序包含一个或多个窗
27、体模块。 每个窗体模块可分为二部分,一部分作为用户每个窗体模块可分为二部分,一部分作为用户界面窗体的图形描述),另一部分是执行具体界面窗体的图形描述),另一部分是执行具体操作的代码事件过程),这些代码与窗体或控操作的代码事件过程),这些代码与窗体或控件相关联。件相关联。2.3.1 VB2.3.1 VB程序的结构程序的结构1 1窗体模块窗体模块 如程序启动时执行窗体加如程序启动时执行窗体加载事件过程载事件过程Form_Load()Form_Load(),在在Text1Text1文本框显示文本框显示“欢迎使欢迎使用用VBVB”; 当单击当单击Command1Command1按钮时,按钮时,启动启动
28、 Command1_Click() Command1_Click()命命令按钮单击事件过程,文本令按钮单击事件过程,文本框的文字呈现黑体和红色,框的文字呈现黑体和红色,如右图所示。如右图所示。 2.3.1 VB2.3.1 VB程序的结构程序的结构2 2标准模块标准模块 标准模块是指扩展名为标准模块是指扩展名为.BAS.BAS的文件,它完全由代码组的文件,它完全由代码组成,该文件中的代码不与具体的窗体或控件相关联。成,该文件中的代码不与具体的窗体或控件相关联。 在标准模块中,可以定义函数过程或子程序过程,且在标准模块中,可以定义函数过程或子程序过程,且模块级别声明和定义都被默认为模块级别声明和定
29、义都被默认为 PublicPublic全局),即标全局),即标准模块中的过程可以被窗体模块中的任何事件过程调用。准模块中的过程可以被窗体模块中的任何事件过程调用。3 3类模块类模块 类模块是指扩展名为类模块是指扩展名为.CLS.CLS的文件,包含有类定义的模的文件,包含有类定义的模块其属性和方法的定义)。类模块将代码和数据封装块其属性和方法的定义)。类模块将代码和数据封装在同一个模块中,使得对象能保护和验证其中的数据。在同一个模块中,使得对象能保护和验证其中的数据。 每个类模块定义了一个类,由一个类可创建多个对象每个类模块定义了一个类,由一个类可创建多个对象类的实例),创建对象的类能将数据和过
30、程组织成一类的实例),创建对象的类能将数据和过程组织成一个整体。个整体。 可以在窗体模块中创建类的对象,从而调用类模块中可以在窗体模块中创建类的对象,从而调用类模块中的过程。的过程。2.3 VB2.3 VB程序结构与事件驱动编程机制程序结构与事件驱动编程机制 2.3.2 2.3.2 事件驱动编程机制事件驱动编程机制 Visual BasicVisual Basic是采用事件驱动编程机制的语言,事件驱是采用事件驱动编程机制的语言,事件驱动编程机制具有如下几个要点:动编程机制具有如下几个要点: 应用程序基于对象组成应用程序基于对象组成 每个对象都有预定义的事件集每个对象都有预定义的事件集 每个事件
31、的发生都依赖于一定的条件用户或系统驱动)每个事件的发生都依赖于一定的条件用户或系统驱动) 每个事件发生后的响应取决于事件过程中的程序代码每个事件发生后的响应取决于事件过程中的程序代码 事件驱动程序的核心机制是由用户控制事件的发生,即事件驱动程序的核心机制是由用户控制事件的发生,即用户发出什么动作事件),事件驱动应用程序相关联用户发出什么动作事件),事件驱动应用程序相关联的事件过程执行程序代码,做出响应。的事件过程执行程序代码,做出响应。 例如,当用户单击窗体,则执行窗体的单击事件过程中例如,当用户单击窗体,则执行窗体的单击事件过程中代码;如果单击命令按钮,则执行命令按钮的单击事件过代码;如果单
32、击命令按钮,则执行命令按钮的单击事件过程中代码。程中代码。 2.4 2.4 窗体与控件窗体与控件 2.4.1 2.4.1 窗体窗体 窗体与窗体与WindowsWindows下窗口的结构或特性都十分类似。下窗口的结构或特性都十分类似。在设计程序时,窗体是程序员的工作台;而运行程序在设计程序时,窗体是程序员的工作台;而运行程序时,每个窗体对应于一个窗口。窗体是一个特殊的控时,每个窗体对应于一个窗口。窗体是一个特殊的控件对象,是其他控件的容器。在窗体上可以布局其它件对象,是其他控件的容器。在窗体上可以布局其它控件,直观地建立应用程序。控件,直观地建立应用程序。 窗体窗体(Form)(Form)能够成
33、为用户设计的数据输入输出界面。能够成为用户设计的数据输入输出界面。通过用户窗体和控件可方便地输入数据、输出结果以通过用户窗体和控件可方便地输入数据、输出结果以及控制应用程序的执行。及控制应用程序的执行。 窗体作为窗体作为VBVB的对象,具有自己的属性、方法和事件。的对象,具有自己的属性、方法和事件。 2.4.1 2.4.1 窗体窗体1 1窗体的常用属性窗体的常用属性 NameName:窗体对象的名字,默认值:窗体对象的名字,默认值Form1Form1。 CaptionCaption:窗体标题的名字字符串):窗体标题的名字字符串) BackColorBackColor:窗体背景颜色:窗体背景颜色
34、, ,如如vbRed(vbRed(红红) )、vbBlue(vbBlue(蓝蓝) ) ForeColor ForeColor:设置文本或图形的前景颜色。:设置文本或图形的前景颜色。 BorderStyleBorderStyle:窗体的边框样式,可取:窗体的边框样式,可取0 05 5的整数。的整数。 Height,WidthHeight,Width:指定窗体的高度和宽度。:指定窗体的高度和宽度。 其设置格式如下:其设置格式如下: 对象对象.Height =.Height =数值数值 对象对象.Width =.Width =数值数值 如果不设置该属性,则窗口大小与设计时的窗体大小如果不设置该属性,
35、则窗口大小与设计时的窗体大小相同。相同。 2.4.1 2.4.1 窗体窗体2 2窗体的常用事件窗体的常用事件 Click(Click(单击单击) )事件事件 单击窗体内除控件外某位置,触发单击窗体内除控件外某位置,触发Form_Click()Form_Click()单击单击事件过程。事件过程。 DblClick(DblClick(双击双击) )事件事件 双击窗体某个位置,触发双击窗体某个位置,触发Form_ DblClick()Form_ DblClick()事件过程。事件过程。 Load(Load(装入装入) )事件事件: :把窗体装入工作区触发该事件过程。把窗体装入工作区触发该事件过程。
36、Unload(Unload(卸载卸载) )事件事件: :清除一个窗体时触发该事件过程。清除一个窗体时触发该事件过程。 Activate(Activate(活动活动) )事件事件: :窗体变为活动窗口触发该事件过程。窗体变为活动窗口触发该事件过程。 Paint(Paint(绘画绘画) )事件事件: :当窗体被移动或放大触发该事件过程。当窗体被移动或放大触发该事件过程。2.4.1 2.4.1 窗体窗体3 3窗体的常用方法窗体的常用方法 PrintPrint方法方法 用于在窗体用于在窗体FormForm)、图片框)、图片框PicturePicture)、打印机)、打印机(Printer)(Print
37、er)上输出字符或数值。上输出字符或数值。 ClsCls清屏方法清屏方法 清除窗体上由清除窗体上由PrintPrint方法显示的字符和数值,或图片框方法显示的字符和数值,或图片框中显示的图形。中显示的图形。 MoveMove方法方法 用来移动窗体和控件,并可改变其大小。用来移动窗体和控件,并可改变其大小。 ShowShow或或HideHide方法方法 主要用于多窗体程序设计中,显示或隐藏指定的窗主要用于多窗体程序设计中,显示或隐藏指定的窗体。体。2.4.1 2.4.1 窗体窗体3 3窗体的常用方法窗体的常用方法 PrintPrint方法举例如下:方法举例如下: 例例1 1,某窗体的单击事件过程
38、,某窗体的单击事件过程Form1_Click()Form1_Click()中,响应程序代码使用中,响应程序代码使用PrintPrint方法的示例如下:方法的示例如下:Private Sub Form1_Click()Private Sub Form1_Click() Form1.Print how are you;? Form1.Print how are you;? Form1.Print 123456,ABCDEF Form1.Print 123456,ABCDEF Picture.Print Picture.Print 计算机世界计算机世界 Picture.Print Picture.P
39、rint 教材书教材书;5+20; ;5+20; 本本 End SubEnd Sub 3 3窗体的常用方法窗体的常用方法 MoveMove方法举例如下:方法举例如下: 例例2 2,在窗体的任意位置画一个文本框控件,在窗体的任意位置画一个文本框控件Text1Text1,使用,使用MoveMove方法移动窗体和文本框的位置并改变其大小。窗体单方法移动窗体和文本框的位置并改变其大小。窗体单击事件过程击事件过程Form1_Click()Form1_Click()如下:如下: Private Sub Form1_Click()Private Sub Form1_Click() Move 500,500,
40、3800,2500 Move 500,500,3800,2500 Text1.Move 200,200,1500,1000 Text1.Move 200,200,1500,1000 End Sub End Sub 该事件过程先把窗体移到距屏幕左边界该事件过程先把窗体移到距屏幕左边界500,500,上边界上边界500500的位置处,并将其大小设置为宽度的位置处,并将其大小设置为宽度38003800和高度和高度25002500;然后;然后把文本框移到窗体的把文本框移到窗体的200,200200,200处,把大小设置为宽处,把大小设置为宽15001500,高高10001000。 2.4 2.4 窗体
41、与控件窗体与控件 2.4.2 2.4.2 控件的使用控件的使用 在设计用户界面时,需要在窗体上画出各种所需的控件,在设计用户界面时,需要在窗体上画出各种所需的控件,控件是构成用户界面的基本元素。控件是构成用户界面的基本元素。1 1控件的类型控件的类型 VBVB的控件分为以下三类的控件分为以下三类 标准控件也称内部控件)标准控件也称内部控件) 内部控件以图标形式在工具箱中列出,不能添加或删除。内部控件以图标形式在工具箱中列出,不能添加或删除。如标签、文本框、图片框、命令按钮、列表框等。如标签、文本框、图片框、命令按钮、列表框等。 ActiveXActiveX控件控件 各种版本各种版本VBVB提供
42、的控件,仅在专业版和企业版中提供的提供的控件,仅在专业版和企业版中提供的控件,以及第三方提供的控件,以及第三方提供的ActiveXActiveX控件。控件。 可插入对象可插入对象 该对象能添加到工具箱中,可以被当做控件。该对象能添加到工具箱中,可以被当做控件。 2.4.2 2.4.2 控件的使用控件的使用2 2控件的画法控件的画法 建立用户界面的主要工作是画控件,通过两种方建立用户界面的主要工作是画控件,通过两种方法可以在窗体上画一个控件。法可以在窗体上画一个控件。 控件画法一略)控件画法一略) 控件画法二控件画法二 即双击工具箱中某种控件图标,即在当前窗体的中即双击工具箱中某种控件图标,即在
43、当前窗体的中心位置自动画出显示该控件。心位置自动画出显示该控件。留意:留意: 用画法一画控件的过程中,所画控件的大小和位置用画法一画控件的过程中,所画控件的大小和位置是可变的;而用画法二所画控件的大小和位置是固定是可变的;而用画法二所画控件的大小和位置是固定的。两种方法画完控件后,均可重新调整控件的大小的。两种方法画完控件后,均可重新调整控件的大小和位置。和位置。 2.4.2 2.4.2 控件的使用控件的使用3 3控件的基本操作控件的基本操作 对控件的所有操作都是针对活动控件对控件的所有操作都是针对活动控件( (该控件的边该控件的边框上有八个黑色小方块框上有八个黑色小方块) )进行的,不活动的
44、控件不能进行的,不活动的控件不能进行任何操作。进行任何操作。 控件的选择控件的选择 控件的缩放和移动控件的缩放和移动 控件的复制和删除控件的复制和删除 多个控件的对齐与调整多个控件的对齐与调整 2.4 2.4 窗体与控件窗体与控件 2.4.3 2.4.3 常用控件常用控件 本小节仅介绍几个常用控件:标签、文本框、命令本小节仅介绍几个常用控件:标签、文本框、命令按钮以及它们的属性、方法和事件。按钮以及它们的属性、方法和事件。1 1常用控件的公共属性常用控件的公共属性 NameName控件的名字)控件的名字) CaptionCaption控件上显示的文字内容)控件上显示的文字内容) Visible
45、Visible取值取值TureTure或或FlaseFlase,决定对象是否可见),决定对象是否可见) FontFont系列字符格式)系列字符格式) FontNameFontName字体:宋体)字体:宋体) FontSizeFontSize字号)、字号)、FontBoldFontBold粗体字)粗体字) FontItalicFontItalic斜体字)、斜体字)、FontUnderlineFontUnderline下划线)下划线)2.4.3 2.4.3 常用控件常用控件 1 1常用控件的公共属性常用控件的公共属性 LeftLeft、TopTop和和HeightHeight、WidthWidth
46、整型数)整型数) 确定界面对象的坐标位置和尺寸大小。确定界面对象的坐标位置和尺寸大小。 ForeColorForeColor前景色):与窗体该属性相同。前景色):与窗体该属性相同。 BackColorBackColor背景色):与窗体该属性相同。背景色):与窗体该属性相同。 BorderStyleBorderStyle边框样式):边框样式): 取值取值0-0-控件无边框线,取值控件无边框线,取值1-1-控件周围加单线边框。控件周围加单线边框。 EnabledEnabled逻辑型)逻辑型) 用来确定对象是否有效可用),即一个窗体和控件是用来确定对象是否有效可用),即一个窗体和控件是否能够对用户产
47、生的事件做出反应。取值否能够对用户产生的事件做出反应。取值True True ,允许对,允许对象对事件做出反应;取值象对事件做出反应;取值FlaseFlase,禁止对事件做出反应。,禁止对事件做出反应。2.4.3 2.4.3 常用控件常用控件 2 2标签标签LabelLabel控件控件 标签主要用来显示文本信息,其默认名称标签主要用来显示文本信息,其默认名称NameName和标题和标题CaptionCaption为为Label1Label1、Label2Label2、Label3Label3,它显示的文本信息只能用它显示的文本信息只能用CaptionCaption属性来设置或修改,属性来设置或
48、修改,不能直接编辑。不能直接编辑。 标签常用来标注本身不具有标签常用来标注本身不具有CaptionCaption属性的控件,属性的控件,如文本框、列表框和组合框等。在窗体中添加这些控如文本框、列表框和组合框等。在窗体中添加这些控件时,可用标签为它们附加描述性文字。件时,可用标签为它们附加描述性文字。 标签的部分属性除了与大多数控件的共同属性相标签的部分属性除了与大多数控件的共同属性相同外,还有一些特殊的属性。同外,还有一些特殊的属性。 2 2标签标签LabelLabel控件控件(1)(1)标签特有属性标签特有属性 Alignment Alignment 用来确定标签中显示标题的对齐方式,可以设
49、置为用来确定标签中显示标题的对齐方式,可以设置为0-0-左对齐、左对齐、1-1-右对齐、右对齐、2-2-居中。居中。 AutosizeAutosize逻辑型)逻辑型) 若取若取TrueTrue,可根据,可根据CaptionCaption属性指定的标题内容,属性指定的标题内容,自动调整标签的大小;若取自动调整标签的大小;若取FlaseFlase,则标签保持设计,则标签保持设计时定义的大小,若标题太长,只能部分显示。时定义的大小,若标题太长,只能部分显示。 WordWrapWordWrap逻辑型)逻辑型) 确定标签的标题确定标签的标题CaptionCaption属性的显示方式。即属性的显示方式。即
50、标题内容太长时,在行末是否自动换行。值为标题内容太长时,在行末是否自动换行。值为True True 则自动换行,否则不换行。要使则自动换行,否则不换行。要使WordWrapWordWrap属性起作用,属性起作用,必须把必须把AutosizeAutosize属性设置为属性设置为TrueTrue。2 2标签标签LabelLabel控件控件(2)(2)标签的常用方法和事件标签的常用方法和事件 标签常用标签常用MoveMove方法,方法,ClickClick单击单击事件和事件和DblClickDblClick双击事件。双击事件。 例如,标签单击事件过程如下:例如,标签单击事件过程如下:Private
51、Sub Label1_Click()Private Sub Label1_Click() Label1.AutoSize = True Label1.AutoSize = True Caption = Caption = 标签示例标签示例 Label1.Caption = Label1.Caption = 请输入密码请输入密码: Label1.FontName = Label1.FontName = 华文彩云华文彩云“ Label1.FontBold = True Label1.FontBold = True Label1.FontSize = 24 Label1.FontSize = 24E
52、nd Sub End Sub 单击标签,触发该事件过单击标签,触发该事件过程,执行响应程序代码,程,执行响应程序代码,其运行结果如图所示其运行结果如图所示 2.4.3 2.4.3 常用控件常用控件 3 3文本框文本框TextBoxTextBox控件控件 文本框是一个文本编辑区域,也称为文字编辑文本框是一个文本编辑区域,也称为文字编辑控件控件, ,其对象类名为其对象类名为TextBoxTextBox,默认名称,默认名称NameName和和标题标题CaptionCaption为为Text1Text1、Text2Text2。 在设计阶段或运行时可以在文本框输入、修改在设计阶段或运行时可以在文本框输入
53、、修改和显示文本。通常用于为程序提供输入数据的窗口。和显示文本。通常用于为程序提供输入数据的窗口。 控件的公共属性也可以用于文本框,此外文本控件的公共属性也可以用于文本框,此外文本框控件还具有如下的特殊属性。框控件还具有如下的特殊属性。 2.4.3 2.4.3 常用控件常用控件 3 3文本框文本框TextBoxTextBox控件控件(1)(1)文本框的常用属性文本框的常用属性 TextText:设置文本框中显示的内容。:设置文本框中显示的内容。 MaxLenghtMaxLenght:允许在文本框中输入的最大字符数。:允许在文本框中输入的最大字符数。 MultilineMultiline:确定文
54、本框是否允许输入或显示多行文本。:确定文本框是否允许输入或显示多行文本。取值取值True-True-多行,取值多行,取值Flase-Flase-单行。单行。 ScrollBarsScrollBars:确定文本框中是否有滚动条。:确定文本框中是否有滚动条。 PasswordCharPasswordChar:确定所键入的字符或占位符在文本框中:确定所键入的字符或占位符在文本框中是否显示出来,主要用来输入口令。是否显示出来,主要用来输入口令。 AlignmentAlignment:确定文本框中文字的对齐方式。:确定文本框中文字的对齐方式。 LockedLocked逻辑型):确定文本框是否可被编辑。逻
55、辑型):确定文本框是否可被编辑。 取取False(False(默认值默认值)-)-可编辑可编辑, ,取值取值True-True-不能编辑。不能编辑。 3 3文本框文本框TextBoxTextBox控件控件(2)(2)文本框的常用方法和事件文本框的常用方法和事件 SetFocusSetFocus方法方法 用于将焦点输入光标移到指定的文本框中,以便接用于将焦点输入光标移到指定的文本框中,以便接收输入信息。即该方法把光标置于所需的文本框。收输入信息。即该方法把光标置于所需的文本框。 ChangeChange事件事件 用户改变文本框正文或通过程序代码把用户改变文本框正文或通过程序代码把TextText
56、属性设置为属性设置为新值时,将触发新值时,将触发ChangeChange事件。事件。 GetFocusGetFocus事件事件 该事件在文本框获得焦点时触发。可通过按该事件在文本框获得焦点时触发。可通过按TabTab键、单键、单击对象以及在代码中调用击对象以及在代码中调用SetFocusSetFocus方法等接收到焦点。方法等接收到焦点。 LostFocusLostFocus事件事件 当按下当按下TabTab键使光标焦点离开当前文本框或者鼠标键使光标焦点离开当前文本框或者鼠标选择窗体中其他对象时触发该事件。选择窗体中其他对象时触发该事件。文本框的常用方法和事件举例:文本框的常用方法和事件举例:
57、 例如,建立两个文本框,当第一例如,建立两个文本框,当第一个文本框获得焦点时,将两个文本个文本框获得焦点时,将两个文本框内容清除,设置该文本框的文字框内容清除,设置该文本框的文字为红色、加粗;在第一文本框输入为红色、加粗;在第一文本框输入文字后按文字后按TabTab键离开时,第二个文键离开时,第二个文本框内容与第一个文本框内容相同。本框内容与第一个文本框内容相同。文本框获得焦点时触发事件过程:文本框获得焦点时触发事件过程:Private Sub Text1_GotFocus()Private Sub Text1_GotFocus() Text1.Text = Text1.Text = Text
58、2.Text = Text2.Text = Text1.FontBold = True Text1.FontBold = True Text1.ForeColor = vbRed Text1.ForeColor = vbRed End SubEnd Sub离开文本框触发事件过程离开文本框触发事件过程Sub Text1_LostFocus()Sub Text1_LostFocus() Text2.Text = Text1.Text Text2.Text = Text1.TextEnd SubEnd Sub2.4.3 2.4.3 常用控件常用控件 4 4按钮按钮CommandButtonComma
59、ndButton控件控件 按钮控件是指命令按钮,其对象的类名为按钮控件是指命令按钮,其对象的类名为CommandButtonCommandButton,默认名称,默认名称(Name)(Name)和标题和标题CaptionCaption为为Command1Command1、Command2Command2,它是,它是VBVB应用程序中最常用应用程序中最常用的控件。的控件。 命令按钮通常用来在单击时执行指定的操作,即命令按钮通常用来在单击时执行指定的操作,即由用户控制事件的发生,实现一个过程的开始、中断由用户控制事件的发生,实现一个过程的开始、中断或结束,提供用户与应用程序间的交互。或结束,提供用
60、户与应用程序间的交互。 大多数控件的公共属性都可用于命令按钮,此外大多数控件的公共属性都可用于命令按钮,此外命令按钮还有如下的特殊属性:命令按钮还有如下的特殊属性: 2.4.3 2.4.3 常用控件常用控件 4 4按钮按钮CommandButtonCommandButton控件控件命令按钮的常用属性、方法和事件:命令按钮的常用属性、方法和事件: CancelCancel属性属性 设置为设置为TrueTrue时,单击该命令按钮与按时,单击该命令按钮与按EscEsc键的作用相同。键的作用相同。 DefaultDefault属性属性 设置为设置为TrueTrue时,按回车键与单击该命令按钮的作用相同
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 《安全感悟分享》课件
- 《职业适应与发展》课件
- 《生产安全事故应急》课件
- 2024教师发言稿(34篇)
- 艺术与人生和社会的关系
- 单位管理制度汇编大全【人事管理】
- 单位管理制度分享合集【人员管理篇】十篇
- 单位管理制度分享大合集【人员管理】十篇
- 单位管理制度范文大合集【员工管理篇】十篇
- 单位管理制度呈现大全【人员管理】
- 安全生产培训法律法规
- 广东省广州市2021-2022学年高二上学期期末五校联考生物试题
- 2024年领导干部任前廉政知识考试测试题库及答案
- 2023-2024学年浙江省宁波市镇海区四年级(上)期末数学试卷
- 舞蹈演出编导排练合同模板
- 融资合作法律意见
- 污水泵站运营维护管理方案
- 湖北省武汉市洪山区2023-2024学年六年级上学期语文期末试卷(含答案)
- 2024下半年软考信息安全工程师考试真题-及答案-打印
- 中医辨证-八纲辨证(中医学课件)
- 冠脉介入进修汇报
评论
0/150
提交评论