zoukankan      html  css  js  c++  java
  • 我对委托/事件的理解

    我对委托/事件的理解
    当想实现下面这个功能的时候就可以用委托/事件,
    有一个主程序,其中有一个看PPT文档的类,但是看PPT速度很慢,主程序继续运行,当PPT看完了之后

    需要通知主程序,这时候就需要使用委托/事件。
    --------------------------------------------------
    在看PPT类中定义委托和事件,如
    public delegate void ReadPPTEndEventHandler(参数,参数,参数);
    public event ReadPPTEndEventHandler ReadPPTEndEvent; //再用上面的方法定义一个Event
    假设PPT里面有一个Read()方法
    pulibc void Read()
    {
     //....若干代码
     //当读完了之后,这里需要调用ReadPPTEndEvent,其实就是调用主程序的一个方法,去通知

    主程序
     if(ReadPPTEndEvent!=null)
     {
      this.ReadPPTEndEvent(参数,参数,参数);
     }
    }
    --------------------------------------------------
    再看主程序代码,
    主程序中肯定有一个和ReadPPTEndEventHandler(参数,参数,参数)参数一样的方法,假设叫做
    Main_ReadPPTEndEvent(参数,参数,参数),注意:这里只需要参数对应就可以,方法随便!!
    --------------------------------------------------
    下面是开始调用

    PPT.ReadPPTEndEvent += new PPT.ReadPPTEndEvent(Main_ReadPPTEndEvent);//这里声明,必须把主

    程序的方法Main_ReadPPTEndEvent传入
    PPT ppt = new PPT();
    ppt.Read();
    --------------------------------------------------
    :( 我的理解就是这样。。。。

  • 相关阅读:
    P2617 Dynamic Rankings[带修主席树(模板)]
    P2617 Dynamic Rankings[带修主席树(模板)]
    P4127 [AHOI2009]同类分布
    P4127 [AHOI2009]同类分布
    P4550 收集邮票 [期望dp]
    P4550 收集邮票 [期望dp]
    P3168 [CQOI2015]任务查询系统
    蓝桥杯 2的次幂表示 递归
    蓝桥杯 最大的算式 dp
    蓝桥杯 未名湖边的烦恼 递推 dp
  • 原文地址:https://www.cnblogs.com/yesun/p/409106.html
Copyright © 2011-2022 走看看