事件驱动编程

大多数基于窗口的程序,一个显著的特征是事件驱动。这意味着程序要响应不同的事件,如单机鼠标、按下键盘上的按键,或者重新调整窗口的大小。系统自动管理事件队列,该队列接收到已经发生的特定事件信息,并按照先来先服务的顺序处理这些信息。程序员将程序组织成回调函数的集合,这些回调函数一有事件发生就执行。当回调函数执行完后,应用程序从队列移走响应的消息,再从调用处恢复成等待状态。程序员必须在每个回调函数内部编写事件产生时将发生什么事件的代码,不需要编写什么时候调用回调函数的指令,调用回调函数是系统自动处理的。这一点对程序的编写者和代码的任何读者来说很重要。

因为存在的事件类型不多,所以系统对于每一种可能发生的事件类型都创建了一个回调函数。当系统将某个事件从队列中移走事,系统只执行与该事件类型相关的回调函数。这种结构更像是:“什么也不做,等待事件发生,事件发生后再做指定的事”。系统在重复的循环中耐心地等待,直到收到一个事件触发信号。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值