' 警察抓小偷()
Module Module1 Module Module1
    '事件委托
    Public Delegate Sub 抓小偷事件()Sub 抓小偷事件(ByVal sender As 小偷, ByVal e As 偷东西事件参数)
    '事件参数
    Public Class 偷东西事件参数Class 偷东西事件参数
        Inherits System.EventArgs
        Public 偷的东西 As String
        Public 偷的地点 As String
        Public 被偷的人 As String
    End Class
    '警察类
    Public Class 警察Class 警察
        Public Sub New()Sub New()
            Console.WriteLine("生成警察。。。")
            Console.WriteLine()
        End Sub
        Public Sub 抓小偷()Sub 抓小偷(ByVal sender As 小偷, ByVal e As 偷东西事件参数)
            Console.WriteLine()
            Console.WriteLine("警察:小毛贼,哪里跑,。。。")
            Console.WriteLine("(小偷被抓。)")
            Console.WriteLine()
            Console.WriteLine("警察:什么名字?")
            Console.WriteLine("小偷:" & sender.姓名)
            Console.WriteLine("警察:偷了什么?")
            Console.WriteLine("小偷:" & e.偷的东西)
            Console.WriteLine("警察:在哪里偷的?")
            Console.WriteLine("小偷:" & e.偷的地点)
            Console.WriteLine("警察:偷了谁的?")
            Console.WriteLine("小偷:" & e.被偷的人)
            Console.WriteLine("警察:蹲局子去!100天。")
            Console.WriteLine()
        End Sub
    End Class
    '小偷类
    Public Class 小偷Class 小偷
        Private _姓名 As String
        Public Property 姓名()Property 姓名() As String
            Get
                Return _姓名
            End Get
            Set(ByVal Value As String)
                _姓名 = Value
            End Set
        End Property
        Public Sub New()Sub New(ByVal 姓名 As String)
            Console.WriteLine("生成小偷。。。" & "(" & 姓名 & ")")
            Me.姓名 = 姓名
            Console.WriteLine()
        End Sub


        Public Event 警察抓小偷事件 As 抓小偷事件
        Public Sub 偷东西()Sub 偷东西(ByVal 偷的东西 As String, ByVal 偷的地点 As String, ByVal 被偷的人 As String)
            Console.WriteLine("小偷:哈哈。。。今天偷了" & 偷的东西)
            Console.WriteLine("(小偷正在暗喜,欲溜。。。。)")
            Console.WriteLine()
            Dim e As New 偷东西事件参数
            e.偷的东西 = 偷的东西
            e.偷的地点 = 偷的地点
            e.被偷的人 = 被偷的人
            RaiseEvent 警察抓小偷事件(Me, e) '偷东西激发警察抓小偷事件
        End Sub
    End Class

    '主程序
    Sub Main()Sub Main()

        Dim 张三 As 小偷 = New 小偷("张三")
        Dim 李四 As New 警察
        Console.WriteLine("公交车上,人很多,警察小偷都有,。。。(有好戏看了)。")
        '警察开始监视小偷,若偷即抓
        AddHandler 张三.警察抓小偷事件, AddressOf 李四.抓小偷
        张三.偷东西("一部手机。", "公交车上。", "一名女士。")
        Console.ReadLine()
    End Sub

End Module

VB.NET中的事件与委托(警察抓小偷)相关推荐

  1. VB.NET下的事件和委托

    委托是可用于调用其他对象方法的对象.它们有时被称为类型安全函数指针,因为它们与其他编程语言中所使用的函数指针相似.但不同于函数指针,Visual Basic .NET 委托是基于 System.Del ...

  2. C#中的事件和委托(续)

    引言 如果你看过了 C#中的委托和事件 一文,我想你对委托和事件已经有了一个基本的认识.但那些远不是委托和事件的全部内容,还有很多的地方没有涉及.本文将讨论委托和事件一些更为细节的问题,包括一些大家常 ...

  3. 用简单的代码测一测你是否真的了解:Asp.Net中的事件和委托的实现

    页面: <%@ Page Language="C#" CodeBehind="Default.aspx.cs" AutoEventWireup=" ...

  4. C#中的委托和事件 (4)---事件和委托的编译代码

    事件和委托的编译代码 这时候,我们不得不注释掉编译错误的行,然后重新进行编译,再借助Reflactor来对 event的声明语句做一探究,看看为什么会发生这样的错误: public event Gre ...

  5. vue学习:事件传递(冒泡和捕获),事件委托,jquery中的事件委托,$event 获取元素,vue事件修饰符

    事件传递 ----冒泡和捕获 DOM事件标准定义了两种事件流,这两种事件流分别是捕获和冒泡. 和许多Web技 术一样,在它们成为标准之前,Netscape和微软各自不同地实现了它们.Netscape选 ...

  6. JQuery中的事件委托

    JQuery 中的事件委托 定义 事件委托就是利用冒泡的原理,把事件加到父级上,通过判断事件来源的子集,执行相应的操作,事件委托首先可以极大减少事件绑定次数,提高性能:其次可以让新元素的子元素也可以拥 ...

  7. 第三天:js中的事件提高篇(事件流,事件对象,事件委托深层次理解)

    目录 前言 一,基础部分 1.1 js监听并绑定事件 1.2 删除事件绑定 二,事件流 2.1 事件流是什么 2.2 事件流模型 2.3 捕获与冒泡具体示例 2.3.1 addEventListene ...

  8. jquery 监听td点击事件_React 事件 | 1. React 中的事件委托

    说到 React 的事件,也算是 React 的一个非常有亮点的优化,它在原生事件体系的基础上,单独实现了一套事件机制.想要了解这个机制,首先的了解下什么是事件委托以及事件委托的好处. 事件委托 假设 ...

  9. JS 中的事件委托是什么?

    大家好,我是前端西瓜哥.今天我们来认识一下事件委托. 所谓事件委托,就是将原本应该在当前元素绑定的事件,放到它的祖先元素上,让祖先元素来委托处理. 事件流 事件流指从页面中接收事件的顺序,也可理解为事 ...

最新文章

  1. frame,iframe,frameset之间的关系与区别
  2. CommonJS规范与AMD规范的理解
  3. 为什么数学是理解世界的最佳方式
  4. [HOW TO]-官网拉取Trusty-TEE的代码
  5. 一些DIV+CSS 命名规范
  6. access vba代码大全_VBA 实践指南 -- VBA连接各种数据库
  7. python判断正负的函数_Python |在计算操作的函数内将负数转换为正数?
  8. k8s安装sqlite3_kubernetes环境部署单节点redis数据库的方法
  9. 谈谈对 Spring 的理解
  10. 10分钟 教你学会Linux/Unix下的vi文本编辑器
  11. GNU make manual 翻译(三十)
  12. 【Python3】复制、移动、删除文件及文件夹
  13. 开心盒子助手3.0版|开心盒子助手工具3.0电脑版
  14. 解决Dev-C++ [Error] ‘for‘ loop initial declarations are only allowed in C99 or C11 mode
  15. 物联网定位系统:GPS、WiFi、基站、RFID…
  16. 由sizeof 这个“管”,窥一窥C语言这只“豹”
  17. UNR2 黎明前的巧克力
  18. 基于asp.net028住院部病人管理系统
  19. [转贴]电脑使用者的眼睛保护须知
  20. android Button美化

热门文章

  1. 跨域问题JAVA后台设置cors跨域中关于access-control-allow-headers导致的错误
  2. linux控制台超时自动注销
  3. keil无法单步c语言,在keil单步调试的时候,总调试进不了头文件(单步),直接嗖的一下就飞到了函数末尾...
  4. 采购文件“单套制”归档管理研究
  5. codewars-018: Tortoise racing 乌龟赛跑
  6. Exchange Server 常见问题
  7. 电脑保存或者另存为文件时显示文件名无效
  8. 【JZOJ3319】【LOJ2686】雪地踪迹【BFS】
  9. 【搜索】JZOJ_3319 LOJ_2686 「BalticOI 2013」雪地足迹 Tracks in the Snow
  10. 基于SSM框架的个性化眼镜线上销售系统+论文第三稿+已降重+包安装配置