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中的属性、方法和事件概念解析的更多相关文章

  1. js中__proto__, property, prototype, 对象自身属性方法和原型中的属性方法的区别

    __proto__: 这个属性是实例对象的属性,每个实例对象都有一个__proto__属性,这个属性指向实例化该实例的构造函数的原型对象(prototype). proterty:这个方法是对象的属性 ...

  2. C#中实现VB中的CreateObject方法

    经常看到有些VB的例子中直接用个CreateObject就可调用系统功能(大多是COM对象),像用户设定,网络设定等等.虽然C#中可以通过使用VB的命名空间的方法来调用CreateObject函数,但 ...

  3. SSM-SpringMVC-10:SpringMVC中PropertiesMethodNameResolver属性方法名称解析器

    ------------吾亦无他,唯手熟尔,谦卑若愚,好学若饥------------- 上次的以继承MultiActionController可以实现一个处理器中多个处理方法,但是局限出来了,他们的 ...

  4. javascript中DOM0,DOM2,DOM3级事件模型解析

    DOM 即 文档对象模型. 文档对象模型是一种与编程语言及平台无关的API(Application programming Interface),借助于它,程序能够动态地访问和修改文档内容.结构或显示 ...

  5. HTML5的Video标签的属性,方法和事件汇总

    <video>标签的属性 src :视频的属性 poster:视频封面,没有播放时显示的图片 preload:预加载 autoplay:自动播放 loop:循环播放 controls:浏览 ...

  6. BackgroundWorker类中主要属性、方法和事件

    属性: 1.CancellationPending             获取一个值,指示应用程序是否已请求取消后台操作.通过在DoWork事件中判断CancellationPending属性可以认 ...

  7. 在C#中使用属性控制 XML 序列化来解析XML

    今天需要解析一个XML,这个XML和一般情况用.NET的序列化出来的格式不太一样. 我就又补习了一下. 分享一下学习成果吧. 示例代码下载: http://download.csdn.net/deta ...

  8. VB 中 NumericUpDown 控件 如何为手动输入设定触发事件

    Private Sub numDuration_KeyUp(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) ...

  9. 【转】VB中应用DDE

    动态数据交换(dde)是windows应用程序间通讯的基本方法之一,在动态数据交换的过程中,提供数据和服务的应用程序称为服务器,请求数据或服务的应用程序则称为客户. dde交谈是由客户程序启动的.如果 ...

随机推荐

  1. 2014 Super Training #10 D 花生的序列 --DP

    原题: FZU 2170 http://acm.fzu.edu.cn/problem.php?pid=2170 这题确实是当时没读懂题目,连样例都没想通,所以没做了,所以还是感觉这样散漫的做不好,有些 ...

  2. Bellman-Ford算法判负环

    算法思想:如果没有负权回路,dis数组应该会在n-1次松弛之后结束. 算法复杂度:O(n*m).比Dijkstra算法复杂度要高. 代码: bool Bellman_Ford(int s) { int ...

  3. POJ 3255 Roadblocks --次短路径

    由于次短路一定存在,则可知次短路一定是最短路中某一条边不走,然后回到最短路,而且只是一条边,两条边以上不走的话,就一定不会是次短路了(即以边换边才能使最小).所以可以枚举每一条边,算出从起点到这条边起 ...

  4. 第16章 Windows线程栈

    16.1 线程栈及工作原理 (1)线程栈简介 ①系统在创建线程时,会为线程预订一块地址空间(即每个线程私有的栈空间),并调拨一些物理存储器.默认情况下,预订1MB的地址空间并调拨两个页面的存储器. ② ...

  5. Windows安装 ANT

    apache-ant-1.7.1-bin.zip 下载地址:http://ant.apache.org/bindownload.cgi 第一步      解压apache-ant-1.7.1-bin. ...

  6. 用运算符代替if、else

  7. angular常见坑洞

    由于版本不同,可能有些问题在某些版本下出现,某些版本下不出现. 指令不可平行(v1.3.2): 多个指令不能这样一个接着一个排下去: <div> <directive-one/> ...

  8. PYTHON FABRIC实现远程操作和部署

    转载至:http://wklken.me/posts/2013/03/25/python-tool-fabric.html fabric title是开发,但是同时要干开发测试还有运维的活 (o(╯□ ...

  9. POJ 2406 Power Strings

    F - Power Strings Time Limit:3000MS     Memory Limit:65536KB     64bit IO Format:%I64d & %I64u S ...

  10. C#中成员初始化顺序

    http://blog.csdn.net/huangcailian/article/details/25958967 一.成员初始化整体顺序 1.成员赋值初始化先于构造函数: 2.成员赋值初始先从子类 ...