事件vb入门教程

vb入门教程  时间:2021-02-27  阅读:()
第3章VisualBasic编程基础本章要点本章介绍了VisualBasic程序设计的基本步骤、程序书写规范,并用通俗易懂的语言详细讲解了VisualBasic面向对象程序设计中的几个重要而抽象的概念:对象与类,属性、方法和事件,事件驱动机制,窗体模块、标准模块和类模块等.
学习目标1.
了解VisualBasic程序设计的基本步骤、类模块的概念.
2.
理解对象与类的概念、事件驱动机制.
3.
掌握VisualBasic程序书写规范,属性、事件和方法,以及窗体模块和标准模块的用法.
3.
1VisualBasic程序设计的基本步骤利用VisualBasic进行程序设计大致包括以下基本步骤:①设计应用程序的界面.
如对窗体、命令按钮、菜单进行设计并设置它们的属性.
②编写事件过程代码.
即编写事件发生后所要执行的程序代码.
这些代码用于对发生的各种事件做出响应.
如鼠标单击"新建"菜单的事件发生后,可以执行该菜单的单击事件过程以建立一个新的文件.
③调试并保存应用程序中的各个组成文件,并编译生成可执行文件.
编译生成的可执行文件可以脱离VisualBasic开发环境直接在Windows中运行.
3.
2对象与类1.
对象(Object)VisualBasic具有"面向对象"的特性,VisualBasic应用程序的基本单元是对象,用VisualBasic编程就是用"对象"组装程序.
这种"面向对象"的编程方法与传统的全部用代码编制程序的方法有很大区别,就像用集成电路芯片组装电视机和用三极管、二极管组装电视机的区别一样.
显然,"面向对象"的编程方法比传统的编程方法更简单、更方便,并且编写出的程序也更加稳定.
因此,"对象"可以被看作VisualBasic程序设计的核心.
在VisualBasic程序设计中,对象中还可以包含其他对象,包含其他对象的对象称为容器.
举个例子来说,如果把"人"当作要研究的一个对象,人又包含头、手、腿、脚等部位,其中的每个部位又可以单独作为被研究的对象.
在VisualBasic程序设计中,整个应用程序就是一个对VViissuuaallBBaassiicc编编程程基基础础第第33章章013象,应用程序中又包含着窗体(Form)、命令按钮(CommandButton)、菜单(Menu)等对象.
2.
类(Class)在VisualBasic中,对象是由类创建的,因此可以说对象是类的具体实例,这就好比蛋糕和做蛋糕的模具之间的关系.
各种不同的对象分属于各种不同的种类.
同一类对象可能具有一些不同的特性(或者说同一类对象不一定具有完全相同的特性);具有某些相同特性的对象,不一定是同一类对象.
这就好比人和猴子虽然都有身高、性别等特性,但二者之间还存在着智商、语言等特性差异,这两个对象之间的特性相差很多,根本就不能算作同一类对象.
而男人和女人,虽然有着性别、生理等方面的差异,但他们绝大部分特性相同,可以算作同一种类.
由此,可以归结为一句话:同一类对象的绝大部分特性相同.
3.
3属性、方法和事件在VisualBasic中,可以通过属性、方法和事件来说明和衡量一个对象的特性.
1.
属性(Property)属性是指用于描述对象的名称、位置、颜色、字体等特性的一些指标.
通过改变对象的属性值可以改变对象的特性.
有些属性可以在设计时通过属性窗口来设置,不用编写任何代码;而有些属性则必须通过编写代码,在运行程序时进行设置.
可以在运行时读取和设置取值的属性称为读写属性,只能读取的属性称为只读属性.
同样以"人"这类对象为例.
人具有的各种特性,都可以称为属性,如身高、性别、年龄、学历等.
这些属性数据以属性值的方式记录在属性栏中.
同一类对象的绝大部分属性栏相同,但其中记录的属性值不一定相同.
例如,程序中的命令按钮(CommandButton)都具有高度(Height)、宽度(Width)、字体(Font)等属性,但每个不同的命令按钮的高度、宽度、字体等属性的具体取值不一定相同.
总之,属性指明了对象"是什么样的",常用于定义对象的外观.
2.
方法(Method)方法是用来控制对象的功能及操作的内部程序.
例如,人具有说话、行走、学习、睡觉等功能,在VisualBasic中,对象所能提供的这些功能和操作,就称作"方法".
以窗体为例,它具有显示(Show)或隐藏(Hide)的方法.
总之,方法指明了对象"能做什么",常用于定义对象的功能和操作.
3.
事件(Event)事件是指发生在某一对象上的事情.
事件又可分为鼠标事件及键盘事件.
例如,在命令按钮(CommandButton)这一对象上可能发生鼠标单击(Click)、鼠标移动(MouseMove)、鼠标按下(MouseDown)等鼠标事件,也可能发生键盘按下(KeyDown)等键盘事件.
人可以对外界事件做出反应,例如,某人听见其他人叫自己的名字时会立即答应,或扭头寻找.
同样,VisualBasic中的对象也具有响应一些外部事件的能力,例如,命令按钮或菜单被鼠标单击(Click)时会执行相应的程序代码来完成指定的操作.
总之,事件指明了对象"什么情况下做",常用于定义对象发生某种反应的时机和条件.
0143.
4事件驱动机制1.
事件驱动机制与传统编程方式的异同在传统的程序设计过程中,程序是按照预先编写的代码逐条依次执行的,即按照预定的流程执行.
而VisualBasic是按照事件驱动机制运行程序的.
VisualBasic的每一个窗体和控件都有一个预定义的事件集,如鼠标单击(Click)事件、鼠标双击(Dblclick)事件等.
如果其中有一个事件发生,而且在关联的事件处理过程中存在代码,则VisualBasic执行对应的代码.
在事件驱动机制中,系统先执行哪一段代码并不取决于预定的顺序,而是由用户操作来决定的.
例如,单击某个按钮的操作产生该按钮的单击(Click)事件,此时被执行的代码就是该按钮的单击(Click)事件处理程序,随后又发生了某个菜单的单击(Click)事件,则接下来被执行的代码就是该菜单的单击(Click)事件处理程序.
这就是VisualBasic的事件驱动机制.
在一个事件处理过程内部,VisualBasic语言与其他传统语言类似,程序也是按照预定的流程执行的.
2.
事件产生的方式在VisualBasic中,产生一个事件大致有以下几种情况:①程序操作者触发.
操作者可以通过键盘操作或鼠标操作产生一个事件,如鼠标单击(Click)事件、鼠标双击(Dblclick)事件、键盘按下(KeyDown)事件等.
②由系统触发.
系统自身也可以触发事件,如在一个定时提醒程序中,可以利用"定时器控件"在时间满足提醒条件时由系统自动触发一个事件提醒用户需要处理的事情.
③代码间接触发.
有些事件可以由程序代码间接触发,如当代码装载窗体时会产生该窗体的Load(装载)事件等.
3.
事件驱动程序的执行过程事件驱动程序的执行过程分为以下4步:①启动应用程序,装载和显示窗体;②应用程序(主要是窗体或控件)接收和响应发生的事件;③如果在相应的事件处理过程中存在代码,就执行这些代码;④应用程序等待下一个事件的发生.
如此周而复始地运行,直到程序被关闭.
4.
按照事件驱动机制编写程序的基本方法按照事件驱动机制编程就是根据需要完成事件处理程序的编写工作.
程序设计人员应仔细分析程序运行中可能产生的每一个事件,对于某些事件,在事件发生时希望程序执行若干代码以便实现某种功能,则应将这些代码编写成该事件的事件处理程序;有一些事件,事件发生后不需执行任何代码,不必为这些事件编写代码,系统将忽略这些事件,且对其不会有任何反应.
3.
5组织VisualBasic程序代码VisualBasic是通过程序模块进行代码组织的,其程序模块分为三种类型:窗体模块、标准模块和类模块.
VisualBasic程序的操作界面是窗体,在窗体中可以包含控件(如命令按钮、菜单等),VViissuuaallBBaassiicc编编程程基基础础第第33章章015每个窗体和控件都包含各自的事件处理过程.
一个简单的应用程序可以只有一个窗体,所有程序代码都保存在该窗体及其控件的事件处理过程中,这就是窗体模块.
对于一个庞大复杂的应用程序,则需要创建多个窗体,这样就有可能出现在几个窗体中都要执行的公共代码.
为了避免重复,这些公共代码被保存在一个独立于窗体的模块中,这个模块被称为标准模块.
VisualBasic"面向对象"编程实际上是用具体的对象来组装程序.
对于经常使用的一些程序代码,可以用类模块的形式将其固定下来,使之成为一类对象所固有的功能特性.
这样,就可以在程序设计过程中,用类来产生一些类的实例(程序中引用的具体的对象),进而用具体的对象来完成组装程序的工作,而那些经常使用的程序代码也会随着对象的应用一起发挥功用.
1.
窗体模块窗体模块的文件扩展名为".
frm".
窗体模块中主要包括通用过程和本窗体及其控件的事件处理过程.
在窗体模块中可以定义变量、常数和外部过程的窗体级声明.
在用VisualBasic编写应用程序时,要注意写入窗体模块的代码是该窗体及其控件专用的,对于多个窗体所共用的程序代码可以用"标准模块"的形式来完成,而不是放在某个窗体模块中.
2.
标准模块标准模块的文件扩展名为".
bas".
标准模块是应用程序内其他模块访问公用过程和声明的容器.
它们可以包含变量、常数、外部过程和全局过程的全局声明或模块级声明.
写入标准模块的代码不必针对特定的应用程序,如果能够注意不用具体名称引用窗体和控件,则在许多不同的应用程序中可以重复使用标准模块.
3.
类模块类模块的文件扩展名为".
cls".
在VisualBasic中,类模块是面向对象编程的基础.
可以在类模块中编写代码以建立新的对象.
这些新对象可以包含自定义的属性和方法.
实际上,VisualBasic提供的窗体、控件都是类模块的一种,通过类模块可以根据自己的需要建立自己的对象.
3.
6VisualBasic程序代码书写规范1.
命名规范在编写VisualBasic程序时,要声明和命名许多元素.
声明过程、变量和常数的名字时,必须遵循以下四条规则:①必须以字母开头;②不能包含嵌入的句号或者类型声明字符;③不能超过255个字符,控件、窗体、类和模块的名字不能超过40个字符;④不能和受到限制的关键字同名.
所谓受到限制的关键字是指VisualBasic中预先定义的词,又称保留字,它们是VisualBasic语言的组成部分.
0162.
注释规范在程序代码中使用注释是一个优秀程序设计人员的良好习惯.
这样既可以方便开发者,也可以方便以后可能检查或修改源代码的其他程序设计人员.
在VisualBasic语言中,注释符为"'",当VisualBasic遇到这个符号时将忽略其后面的所有内容.
程序设计人员可以随意地在"'"后面添加中文或英文注释内容.
【例3.
1】PrivateSubForm_Load()'这是一个VisualBasic的示例程序'它主要完成打印学生名册的功能Command1.
Caption="打印"Command2.
Caption="取消"EndSub"'"后面的内容为程序注释内容,程序运行时,将不会被执行.
3.
分行书写规范为了便于程序的阅读和书写,经常要将VisualBasic语句分成多行,分行的方法是在代码中用续行符(一个空格后面跟一个下画线)将长语句分成多行.
【例3.
2】ForEachxmIn.
xmIfxm""ThenDebug.
Print""&_xm.
NamexmNextxm①本例中第2行和第3行实际上是一个完整的语句.
②在同一行内,续行符后面不能加注释.
4.
合并行规范一行语句有时很短时,希望将多条语句合并写到同一行上.
这时只需要将各语句用":"分开即可.
例如:Command1.
Caption="打印":Commadn2.
Caption="取消"这等同于下面的语句:Command1.
Caption="打印"Commadn2.
Caption="取消"VViissuuaallBBaassiicc编编程程基基础础第第33章章017习题31.
填空题(1)对象是VisualBasic应用程序的.
在VisualBasic中可以用、、来说明和衡量一个对象的特性.
(2)属性分为属性和属性两种.
方法是的内部程序.
(3)在VisualBasic中,事件产生的方式主要有、和.
(4)VisualBasic的程序模块有三种:、、.
(5)窗体模块的文件扩展名为、标准模块的文件扩展名为、类模块的文件扩展名为.
(6)在VisualBasic语言中,注释符为,分行符为,并行符为.
(7)通过模块可以根据需要建立自己的对象.
2.
简答题(1)什么是对象的属性(2)简述事件驱动程序的执行过程.
(3)简述事件驱动机制与传统编程方式的异同.

2022年腾讯云新春采购季代金券提前领 领取满减优惠券和域名优惠

2022年春节假期陆续结束,根据惯例在春节之后各大云服务商会继续开始一年的促销活动。今年二月中旬会开启新春采购季的活动,我们已经看到腾讯云商家在春节期间已经有预告活动。当时已经看到有抢先优惠促销活动,目前我们企业和个人可以领取腾讯云代金券满减活动,以及企业用户可以领取域名优惠低至.COM域名1元。 直达链接 - 腾讯云新春采购活动抢先看活动时间:2022年1月20日至2022年2月15日我们可以在...

俄罗斯vps主机推荐,怎么样俄罗斯vps俄罗斯vps速度怎么样?

俄罗斯vps速度怎么样?俄罗斯vps云主机节点是欧洲十大节点之一,地处俄罗斯首都莫斯科,网络带宽辐射周边欧洲大陆,10G专线连通德国法兰克福、法国巴黎、意大利米兰等,向外连接全球。俄罗斯vps云主机速度快吗、延迟多少?由于俄罗斯数据中心出口带宽充足,俄罗斯vps云主机到全球各地的延迟、速度相对来说都不错。今天,云服务器网(yuntue.com)小编介绍一下俄罗斯vps速度及俄罗斯vps主机推荐!俄...

织梦DEDECMS即将授权收费和维权模式 站长应对的几个方法

这两天在站长群里看到不少有使用DEDECMS织梦程序的朋友比较着急,因为前两天有看到来自DEDECMS,我们熟悉的织梦程序官方发布的公告,将会在10月25日开始全面商业用途的使用DEDECMS内容管理程序的会采用授权收费模式,如果我们有在个人或者企业商业用途的,需要联系且得到授权才可以使用,否则后面会通过维权的方式。对于这个事情,我们可能有些站长经历过,比如字体、图片的版权。以及有一些国内的CMS...

vb入门教程为你推荐
金山杀毒怎么样金山杀毒怎么样?打开网页出现错误为什么打不开网页,出错ghostxp3目前最好的ghost xp3是什么?百度抢票浏览器百度浏览器怎么抢票?依赖注入什么是侵入性?还有依赖注入?伪静态什么是伪静态网站?伪静态网站有什么优势1433端口1433端口怎么打开畅想中国20年后中国会变成什么样?--畅想一下未来的中国!!安装迅雷看看播放器怎样安装迅雷看看播放器ejb开发什么是EJB?它是干什么的?和JAVA,JSP有关系吗?他们各有什么特点和用途?
备案域名 抗投诉vps主机 汉邦高科域名申请 国外主机 老鹰主机 cpanel主机 linkcloud 网盘申请 绍兴高防 数字域名 怎么测试下载速度 33456 台湾谷歌 银盘服务 浙江服务器 购买空间 免费网络空间 七牛云存储 apache启动失败 windowsserverr2 更多