c#事件处理小例子
来源:互联网 发布:独战乾坤进阶数据大全 编辑:程序博客网 时间:2024/05/17 20:34
- 首先声明一个委托
- 在Button类里声明一个事件及调用该事件的方法
- 在Form类中定义Button对象,以及不同的事件处理函数,再定义函数注册该事件的三种不同处理方法并触发该事件
- 在主函数创建Form类对象调用执行触发该事件的函数就可以看到结果
copyright vivi_and_qiao liweiusing System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace ConsoleApplication3{ public delegate void MyDelegate(object o); class Form { Button bu = new Button(); public void click1(object o) { Console.ReadKey(); Console.WriteLine("已点击Button"); } public void click2(object o) { Console.ReadKey(); Console.WriteLine("已双击Button"); } public void click3(object o) { Console.ReadKey(); Console.WriteLine("已三击Button"); } public void chufa() { bu.MyEvent+=new MyDelegate(click1); bu.MyEvent += new MyDelegate(click2); bu.MyEvent+=new MyDelegate(click3); bu.Fireway(bu); bu.MyEvent -= new MyDelegate(click2); Console.WriteLine("删除第二个事件之后"); bu.Fireway(bu); } } class Button { public event MyDelegate MyEvent; public void Fireway(object o) { if (MyEvent != null) MyEvent(o); } } class Program { static void Main(string[] args) { new Form().chufa(); Console.ReadKey(); } }}copyright vivi_and_qiao liwei
- 从程序源码以及运行结果图可以知道:这三个事件处理程序的触发时机是在调用事件的方法再被调用的时候,运行顺序是跟事件注册的顺序相同
- 删除第二个事件处理程序,调用事件的方法被调用时,第二个事件的处理程序将不会被执行,其他已经注册的事件将依然按照当初被注册的顺序执行其相应的事件处理程序
0 0
- c#事件处理小例子
- c# 事件委托小例子
- C#事件-经典小例子
- Android处理键盘事件的小例子
- C#中的委托和事件(小例子)
- 事件委托小例子
- 自定义事件小例子
- JavaScript事件小例子
- spring事件处理例子
- C#事件-事件处理
- C#事件例子
- C# 多线程小例子
- C# 小例子
- 事件处理小案例
- C#事件小例
- swing事件处理机制小例子--第二个文本框监视第一个文本框
- C#事件代理简单例子
- 评C#事件处理
- C语言中二重指针和指针数组以及数组指针的测试
- PAT
- linux初学 unit10 练习
- 深入理解JVM笔记-第12章
- 面试基础知识整理 —— 树
- c#事件处理小例子
- kaggle 收不到手机验证码
- sql server 游标
- 面试宝典——Java基础
- java 自动获取广播地址
- Android Studio使用——Android Butterknife Zelezny 插件
- 华为OJ从单向链表中删除指定值的节点
- react-native 启动相机时,闪烁(出现应用前最后一帧)的解决办法
- HDU5012 Dice(广搜BFS)