东人EP的内陆空间!
posts - 77, comments - 54, trackbacks - 0, articles - 0
IT博客
::
首页
::
新随笔
::
联系
::
聚合
::
管理
关于事件和委托理解3
Posted on 2006-05-31 14:19
东人EP
阅读(161)
评论(0)
编辑
收藏
引用
所属分类:
.NET
范例
Events:
说明
示范实现事件处理程序,模拟汽车速度限制的控制程序,当输入的车速大于60,则触发控制事件,警告车速过快,并且要求降低车速。
1
using
System;
2
3
namespace
Events
4
{
5
/**/
///
<summary>
6
///
Class1 的摘要说明。
7
///
</summary>
8
class
Events
9
{
10
/**/
///
<summary>
11
///
应用程序的主入口点。
12
///
</summary>
13
[STAThread]
14
static
void
Main(
string
[] args)
15
{
16
long
speed;
17
CheckSpeed myCheckSpeed
=
new
CheckSpeed();
18
DoSomeThing myDoSomeThing
=
new
DoSomeThing();
19
Console.Write(
"
目前行车速度:
"
);
20
speed
=
long
.Parse(Console.ReadLine());
21
Console.WriteLine(
""
);
22
myCheckSpeed.myEvent
+=
new
SpeedCheckHandler(myDoSomeThing.SlowDown);
23
myCheckSpeed.CheckSpeedLimit(speed);
24
Console.ReadLine();
25
}
26
}
27
28
public
class
SpeedCheckEventArgs : EventArgs
29
{
30
private
long
speed;
31
public
SpeedCheckEventArgs(
long
speed)
32
{
33
this
.speed
=
speed;
34
}
35
public
long
getSpeed
36
{
37
get
38
{
39
return
speed;
40
}
41
}
42
public
string
WarningMessage
43
{
44
get
45
{
46
return
"
警告:行车超过速度界限!!
"
;
47
}
48
}
49
}
50
51
public
delegate
void
SpeedCheckHandler(
object
sender, SpeedCheckEventArgs e);
52
53
public
class
CheckSpeed
54
{
55
public
event
SpeedCheckHandler myEvent;
56
public
void
CheckSpeedLimit(
long
speed)
57
{
58
if
(speed
>
60
)
59
{
60
SpeedCheckEventArgs speedsArgs
=
new
SpeedCheckEventArgs(speed);
61
myEvent(
this
, speedsArgs);
62
}
63
else
64
{
65
Console.WriteLine(
"
您目前的速度正常
"
);
66
}
67
}
68
}
69
70
public
class
DoSomeThing
71
{
72
public
void
SlowDown(
object
sender, SpeedCheckEventArgs e)
73
{
74
Console.WriteLine(e.WarningMessage);
75
Console.WriteLine(
"
您目前车速{0}已超速,请踩下刹车,降低速度,避免危险!!
"
, e.getSpeed);
76
Console.WriteLine(
"
正常行车速度请降至60KM/H以下!!
"
);
77
}
78
}
79
}
80
只有注册用户
登录
后才能发表评论。
Powered by:
IT博客
Copyright © 东人EP
日历
<
2006年5月
>
日
一
二
三
四
五
六
30
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
5
6
7
8
9
10
常用链接
我的随笔
我的评论
我参与的随笔
留言簿
(11)
给我留言
查看公开留言
查看私人留言
随笔分类
(77)
.NET(43)
Ajax(11)
Design Pattern(1)
Java(1)
JavaScript(5)
MapInfo(10)
NB(6)
随笔档案
(77)
2007年2月 (4)
2007年1月 (10)
2006年12月 (1)
2006年11月 (2)
2006年10月 (5)
2006年9月 (9)
2006年8月 (13)
2006年7月 (8)
2006年6月 (19)
2006年5月 (6)
搜索
最新评论
1. re: 我现在Netyi.net上的下载资料,上面的有许多不错的资料,有好多程序设计方面的!
评论内容较长,点击标题查看
--CALDWELLMarjorie
2. re: PetShop3.0学习---数据库关系图
牛XX 分这么细的表
--sf2009
3. re: 显示多行InfoTips
感谢分享你的成功!:)
--LiWeiJiang
4. re: 使用asp.net 2.0和SQL SERVER 2005构建多层应用
不荀了。www.yougoo.net.cn
--ded
5. re: 我现在Netyi.net上的下载资料,上面的有许多不错的资料,有好多程序设计方面的!
评论内容较长,点击标题查看
--dsfsd
阅读排行榜
1. 我现在Netyi.net上的下载资料,上面的有许多不错的资料,有好多程序设计方面的!(6662)
2. MapInfo MapXtreme 2005 WebGIS上实现简单鹰眼设计!(6619)
3. C#实现串口通信编程(3751)
4. ClickOnce 打包部署WinForm 应用程序(3110)
5. SQLHelper.cs(3010)
评论排行榜
1. 我现在Netyi.net上的下载资料,上面的有许多不错的资料,有好多程序设计方面的!(9)
2. 实现漂亮的XP效果!(8)
3. MapInfo MapXtreme 2005 WebGIS上实现简单鹰眼设计!(7)
4. 如何实现服务器端下页面动态添加JavaScript脚本 (4)
5. PetShop3.0学习---数据库关系图(3)