事件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)简述事件驱动机制与传统编程方式的异同.

水墨云历史黑名单IDC,斟酌选购

水墨云怎么样?本站黑名单idc,有被删除账号风险,建议转出及数据备份!水墨云ink cloud Service是成立于2017年的商家,自2020起开始从事香港、日本、韩国、美国等地区CN2 GIA线路的虚拟服务器租赁,同时还有台湾、国内nat vps相关业务,也有iplc专线产品,相对来说主打的是大带宽服务器产品。注意:本站黑名单IDC,有被删除账号风险,请尽量避免,如果已经购买建议转出及数据备...

Hostinger 限时外贸美国主机活动 低至月12元且赠送1个COM域名

Hostinger 商家我们可能一些新用户不是太熟悉,因为我们很多新人用户都可能较多的直接从云服务器、独立服务器起步的。而Hostinger商家已经有将近十年的历史的商家,曾经主做低价虚拟主机,也是比较有知名度的,那时候也有接触过,不过一直没有过多的使用。这不这么多年过去,Hostinger商家一直比较稳妥的在运营,最近看到这个商家在改版UI后且产品上也在活动策划比较多。目前Hostinger在进...

MechanicWeb免费DirectAdmin/异地备份

MechanicWeb怎么样?MechanicWeb好不好?MechanicWeb成立于2008年,目前在美国洛杉矶、凤凰城、达拉斯、迈阿密、北卡、纽约、英国、卢森堡、德国、加拿大、新加坡有11个数据中心,主营全托管型虚拟主机、VPS主机、半专用服务器和独立服务器业务。MechanicWeb只做高端的托管vps,这次MechanicWeb上新Xeon W-1290P处理器套餐,基准3.7GHz最高...

vb入门教程为你推荐
易pc易PC价格多少外网和内网内网和外网有什么区别啊?邮箱打不开怎么办126邮箱打不开怎么办网易公开课怎么下载如何将网易公开课下载到电脑上?ios7固件下载ios 7及以上固件请在设备上点信任在哪点xp系统停止服务xp系统停止服务怎么办?商标注册查询官网怎么查商标是否注册成功ios系统苹果手机的系统是什么?网站优化方案网站建设及优化的方案blogcnCK沉珂是个怎样的一个人?之后又是怎样的 ?
虚拟主机提供商 如何申请免费域名 腾讯云盘 ddos 服务器评测 site5 樊云 highfrequency raksmart 阿里云代金券 e蜗 web应用服务器 百度云空间 wordpress中文主题 可外链的相册 大化网 restart 架设代理服务器 hosts文件修改 傲盾代理 更多