设为首页 加入收藏

TOP

3.2 Windows编程模型
2013-10-07 00:05:13 来源: 作者: 【 】 浏览:61
Tags:3.2 Windows 编程 模型

3.2  Windows编程(www.cppentry.com)模型

熟悉了DOS编程(www.cppentry.com)的朋友可能会更加深刻地了解过程化模型,在DOS环境下,应用程序是一句一句逐个执行的。程序员思考问题的方式和机器的执行顺序是一样的。不需要考虑消息,不需要考虑多线程,一切都是顺其自然。然而在Windows环境下,一切都不一样了,它使用的是事件驱动的编程(www.cppentry.com)模型,应用程序通过处理操作系统发送来的消息来响应事件。事件可能是用户的一次鼠标移动,键盘敲击,或者是系统要求窗口重绘的消息,程序员所需要做的事就是处理应用程序感兴趣的消息。

WinMain函数是整个Windows程序的入口,在这个函数中会创建窗口,设定窗口过程,并进入消息循环。如图3-1所示展示了Windows的事件驱动机制模型。

图3-1  Windows的事件驱动机制模型

从上图可以看出,Windows程序运行的源动力来自于消息队列,WinMain函数通过消息循环从消息队列中提取消息,然后把它提交给窗口过程处理,在窗口过程中,程序员编写自己的消息处理程序,对自己感兴趣的消息进行处理。对于不感兴趣的消息,就交给系统默认的消息处理函数DefWindowProc去处理。DefWindowProc定义了Windows应用程序的许多默认的行为特性,比如单击关闭按钮应用程序会退出,拖动标题栏窗口会移动等行为。如果程序员想要改变这些行为特性,那么就可以在窗口过程中拦截这些消息,对它们进行非默认的处理。
下面从一个最简单的Windows应用程序开始,一步步接触Windows编程(www.cppentry.com)。

【责任编辑:雪花 TEL:(010)68476606】

回书目   上一节   下一节

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇3.3 高级Windows编程 下一篇3.3.2 制作菜单

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: