zoukankan
html css js c++ java
C#笔记 使用自定义事件(含参)
Code
class
含参事件测试
{
//
6.现在来触发事件
static
void
Main(
string
[] args)
{
Dog dog
=
new
Dog();
Host host
=
new
Host(dog);
//
当前时间:从2009年11月1日23:59:50开始计时
DateTime now
=
new
DateTime(
2009
,
11
,
1
,
23
,
59
,
50
);
DateTime midnight
=
new
DateTime(
2009
,
11
,
2
,
0
,
0
,
0
);
//
等待午夜的到来
Console.WriteLine(
"
时间一秒一秒地流逝……
"
);
while
(now
<
midnight)
{
Console.WriteLine(
"
当前时间:
"
+
now);
Thread.Sleep(
1000
);
now
=
now.AddSeconds(
1
);
}
//
午夜零点小偷到达,小狗发出警报事件
Console.WriteLine(
"
\n月黑风高的午夜\n
"
);
Console.WriteLine(
"
小偷进入了房间……
"
);
AlarmEventArgs e
=
new
AlarmEventArgs(
3
);
dog.OnAlarm(e);
}
}
//
构造事件参数
public
class
AlarmEventArgs : EventArgs
{
public
int
numberOfThieves;
public
AlarmEventArgs(
int
numberValue)
{
this
.numberOfThieves
=
numberValue;
}
}
//
事件发送者
class
Dog
{
//
1.声明关于事件的委托
public
delegate
void
AlarmEventHandler(
object
sender,AlarmEventArgs e);
//
2.声明事件
public
event
AlarmEventHandler Alarm;
//
3.编写引发事件的函数
public
void
OnAlarm(AlarmEventArgs e)
{
if
(
this
.Alarm
!=
null
)
{
Console.WriteLine(
"
\n小狗:有小偷进来了,汪汪……\n
"
);
this
.Alarm(
this
,e);
}
}
}
//
事件接收者
class
Host
{
//
4.编写事件处理程序,参数中包含着numberOfThieves信息
//
如果只有一个小偷,则抓住小偷;如果多于一个,主人报警
void
HostHandleAlarm(
object
sender, AlarmEventArgs e)
{
if
(e.numberOfThieves
<=
1
)
{
Console.WriteLine(
"
主人:抓住小偷!
"
);
}
else
{
Console.WriteLine(
"
主人:我家来了{0}个小偷,快报警!
"
,e.numberOfThieves);
}
}
//
5.注册事件处理程序
public
Host(Dog dog)
{
dog.Alarm
+=
new
Dog.AlarmEventHandler(HostHandleAlarm);
}
}
查看全文
相关阅读:
现代软件工程 第一章 概论 第3题——韩婧
现代软件工程 第一章 概论 第2题——韩婧
小组成员邓琨、白文俊、张星星、韩婧
UVa 10892 LCM的个数 (GCD和LCM 质因数分解)
UVa 10780 幂和阶乘 求n!中某个因子的个数
UVa 11859 除法游戏(Nim游戏,质因子)
Codeforces 703C Chris and Road 二分、思考
Codeforces 703D Mishka and Interesting sum 树状数组
hdu 5795 A Simple Nim SG函数(多校)
hdu 5793 A Boring Question 推公式(多校)
原文地址:https://www.cnblogs.com/gb2013/p/1594170.html
最新文章
Runloop源码
UIKitView在打开相机后冻结问题临时处理方案
iOS-OOM(out-of-memery)
王道考研复习-计算机组成原理-计算机系统概述(一)
一对多
vue分页
django中字段和约束
vue的三元表达式
多对多
django 自定义的中间件
热门文章
拦截器和在每次在请求的内容上加固定的内容
字符串
CSS新增样式3
CSS3新增样式2
CSS3新增样式
CSS样式
CSS基础
XHTML表单
XHTML基础
客户端网页编程
Copyright © 2011-2022 走看看