VB中的属性、方法和事件概念解析
Visual Basic 语言中的所有对象都有它们自己的属性、方法和事件,其中包括窗体和控件。可以将属性视为对象的特性,将方法视为对象的操作,而将事件视为对象的响应。
日常生活中的对象(如氦气球)也具有属性、方法和事件。气球的属性包括可见特性,例如它的高度、直径和颜色。其他属性 (Property) 描述了它的状态(充气或放气)或不可见属性 (Attribute),如它的使用年限。尽管每个气球的属性值可能各不相同,但是所有的气球都具有这些属性。
气球也具有它可以执行的已知方法或操作。它具有充气方法(在其中充满氦气)、放气方法(放出其中的气体)和上升方法(释放气球)。同样,所有的气球都可以执行这些方法。
气球也可以对特定的外部事件作出响应。例如,气球以放气响应被刺破事件或以上升响应释放事件。


气球具有属性(Color、Height 和 Diameter),可对事件 (Puncture) 作出响应并可执行方法(Deflate 和 MakeNoise)。
属性
如果您想设计一个气球程序,它的 Visual Basic 代码可能类似于以下设置气球属性的“代码”。
Balloon.Color = Red
Balloon.Diameter = 10
Balloon.Inflated = True
注意代码的顺序——对象 (Balloon) 后面是属性 (Color),然后是赋值 (= Red)。可以通过替换不同的值来改变气球的颜色。
方法
气球的方法是按如下方式调用的。
Balloon.Inflate
Balloon.Deflate
Balloon.Rise(5)
此顺序类似于属性的顺序,即对象(名词)的后面跟方法(谓词)。在第三个方法中有另外一个称为“参数”的项,它指定气球将要上升的距离。一些方法具有一个或多个进一步描述所要执行的操作的参数。
事件
气球可能按照如下所示来响应事件。
Sub Balloon_Puncture()
Balloon.MakeNoise("Bang")
Balloon.Deflate
Balloon.Inflated = False
End Sub
在这种情况下,代码会描述发生 Puncture 事件时气球的行为。发生此事件时,将使用“Bang”(所发出噪音的类型)参数调用 MakeNoise 方法,然后调用 Deflate 方法。由于气球已经不再充气,所以 Inflated 属性设置为 False。
尽管实际上您无法对一个气球编写程序,但是您可以编写 Visual Basic 窗体或控件。作为程序员,您责无旁贷。您可以决定应该更改哪些属性,应该调用哪些方法或应响应哪些事件来实现想要的外观和行为。
VB中的属性、方法和事件概念解析的更多相关文章
- js中__proto__, property, prototype, 对象自身属性方法和原型中的属性方法的区别
__proto__: 这个属性是实例对象的属性,每个实例对象都有一个__proto__属性,这个属性指向实例化该实例的构造函数的原型对象(prototype). proterty:这个方法是对象的属性 ...
- C#中实现VB中的CreateObject方法
经常看到有些VB的例子中直接用个CreateObject就可调用系统功能(大多是COM对象),像用户设定,网络设定等等.虽然C#中可以通过使用VB的命名空间的方法来调用CreateObject函数,但 ...
- SSM-SpringMVC-10:SpringMVC中PropertiesMethodNameResolver属性方法名称解析器
------------吾亦无他,唯手熟尔,谦卑若愚,好学若饥------------- 上次的以继承MultiActionController可以实现一个处理器中多个处理方法,但是局限出来了,他们的 ...
- javascript中DOM0,DOM2,DOM3级事件模型解析
DOM 即 文档对象模型. 文档对象模型是一种与编程语言及平台无关的API(Application programming Interface),借助于它,程序能够动态地访问和修改文档内容.结构或显示 ...
- HTML5的Video标签的属性,方法和事件汇总
<video>标签的属性 src :视频的属性 poster:视频封面,没有播放时显示的图片 preload:预加载 autoplay:自动播放 loop:循环播放 controls:浏览 ...
- BackgroundWorker类中主要属性、方法和事件
属性: 1.CancellationPending 获取一个值,指示应用程序是否已请求取消后台操作.通过在DoWork事件中判断CancellationPending属性可以认 ...
- 在C#中使用属性控制 XML 序列化来解析XML
今天需要解析一个XML,这个XML和一般情况用.NET的序列化出来的格式不太一样. 我就又补习了一下. 分享一下学习成果吧. 示例代码下载: http://download.csdn.net/deta ...
- VB 中 NumericUpDown 控件 如何为手动输入设定触发事件
Private Sub numDuration_KeyUp(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) ...
- 【转】VB中应用DDE
动态数据交换(dde)是windows应用程序间通讯的基本方法之一,在动态数据交换的过程中,提供数据和服务的应用程序称为服务器,请求数据或服务的应用程序则称为客户. dde交谈是由客户程序启动的.如果 ...
随机推荐
- 边工作边刷题:70天一遍leetcode: day 84-2
要点:这题是combination的应用,从左向右想比从右向左容易. 因为有结果从小到大的要求,暗示用combintion而不是permutation 其实就是从小到大验证因子,每个因子和其对称因子立 ...
- Codeforces 234D Cinema
这题做的我好苦啊,编码调试整整搞了一个多小时,而且调到天昏地暗才调出来.. 回归正题,这题是一道本人做过的比较烦,比较无聊的题之一.题意是一个人,在m个影星里有k个喜欢的影星,然后给出n场电影,每场电 ...
- 三维网格形变算法(Linear rotation-invariant coordinates和As-Rigid-As-Possible)
在三维网格形变算法中,个人比较喜欢下面两个算法,算法的效果都比较不错, 不同的是文章[Lipman et al. 2005]算法对控制点平移不太敏感.下面分别介绍这两个算法: 文章[Lipman et ...
- eclipse菜单解释及中英对照《二》
上篇文章主要介绍了eclipse中每个大的标题下的中英文及其用法. 感谢http://blog.csdn.net/li_jinjian2005/article/details/2831641这个博主. ...
- HashTable Dictionary HashMap
HashTable和HashMap 脑海中一直存在两个Hash,一个是HashMap另一个是HashTable,今天来总结一下两者的区别 相同点:表示根据键的哈希代码进行组织的键/值对的集合. 区别: ...
- 关于OAuth2.0的文章收集
http://blog.csdn.net/seccloud/article/details/8192707
- 普通请求和ajax请求的区别
普通请求和ajax请求的区别? 下面的action返回一个json文件,文件内容为sts.*,data1
- 05JavaIO详解_仿照IO源码自己去实现一个IO流(为了加深印象,本身没有价值)
版本会越来越难: 版本1:只写一个read方法 package com.guigu.shen.InputStream; import java.io.IOException; import java. ...
- .NET 知识
1.读懂IL代码就这么简单 IL是.NET框架中中间语言(Intermediate Language)的缩写.使用.NET框架提供的编译器可以直接将源程序编译为.exe或.dll文件,但此时编译出来的 ...
- ip routing&no ip routing
ip routing--------查路由表, 如果ping的目的在RT中没有,不发出任何包(arp也不会发出) 如果RT中存在,则arp 下一跳,相当于no ip routing+配置网关 n ...