社区
C语言
帖子详情
请问WIN32编程里的GetMessage()和PeekMessage()函数区别??
RabbitLBJ
2009-05-21 07:55:28
请问WIN32编程里的GetMessage()和PeekMessage()函数区别??
在处理消息循环的时候到底用哪个函数更好,一般有什么区别,我看WINDOWS游戏编程大师技巧上一般都用PeekMessage(),说什么有同步功能,而别的WIN32编程书籍大都是用GetMessage(),还是不懂两个到底区别在哪里,各位帮忙解答哈,谢谢了!!
...全文
206
7
打赏
收藏
请问WIN32编程里的GetMessage()和PeekMessage()函数区别??
请问WIN32编程里的GetMessage()和PeekMessage()函数区别?? 在处理消息循环的时候到底用哪个函数更好,一般有什么区别,我看WINDOWS游戏编程大师技巧上一般都用PeekMessage(),说什么有同步功能,而别的WIN32编程书籍大都是用GetMessage(),还是不懂两个到底区别在哪里,各位帮忙解答哈,谢谢了!!
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
angel880327
2009-05-22
打赏
举报
回复
对于在那种情况下用那个比较好,至少在一般的小游戏编程中常用PeekMessage():
while( TRUE )
{
if( PeekMessage( &msg, NULL, 0,0 ,PM_REMOVE) )
{
if( msg.message == NULL )
break;
TranslateMessage( &msg );
DispatchMessage( &msg );
}
else
---代码
RabbitLBJ
2009-05-22
打赏
举报
回复
那具体在哪些时候用GetMessage(),哪些时候用PeekMessage()比较好呢??个人比较笨,大家能举个例吗?谢谢了
pathuang68
2009-05-22
打赏
举报
回复
[Quote=引用 1 楼 lingyin55 的回复:]
两个函数主要有以下两个区别:
1.GetMessage将等到有合适的消息时才返回,而PeekMessage只是撇一下消息队列。
2.GetMessage会将消息从队列中删除,而PeekMessage可以设置最后一个参数wRemoveMsg来决定是否将消息保留在队列中。
在Windows的内部,GetMessage和PeekMessage执行着相同的代码。而两者最大的不同之处则体现在没有任何消息返回到应用程序的情况下。在此种情况下,PeekMessage会返回一个空值到应用程…
[/Quote]
一个(GetMessage)是同步的,一个(PeekMessage)是异步的。
liliangbao
2009-05-21
打赏
举报
回复
参考:
http://hi.baidu.com/vcmfc/blog/item/685d111093f2f0f8c2ce79de.html
majun01
2009-05-21
打赏
举报
回复
http://topic.csdn.net/t/20021223/20/1292957.html
lingyin55
2009-05-21
打赏
举报
回复
两个函数主要有以下两个区别:
1.GetMessage将等到有合适的消息时才返回,而PeekMessage只是撇一下消息队列。
2.GetMessage会将消息从队列中删除,而PeekMessage可以设置最后一个参数wRemoveMsg来决定是否将消息保留在队列中。
在Windows的内部,GetMessage和PeekMessage执行着相同的代码。而两者最大的不同之处则体现在没有任何消息返回到应用程序的情况下。在此种情况下,PeekMessage会返回一个空值到应用程序,GetMessage会在此时让应用程序休眠。
Win32
编程
常用
函数
Win32
编程
常用
函数
结构整理 WNDCLASSEX GetStockObject CreateWindow
Message
Box CreatePen GetClientRect SelectObject DeleteObject MoveToEx LineTo SetPixel GetPixel CreateSolidBrush CreateHatchBrush CreatePatternBrush Rectangle FrameRect FillRect Ellipse Polygon InvalidateRect Get
Message
Peek
Message
TextOut DrawText SetTextColor SetBkColor SetBkMode CreateCompatibleDC CreateCompatibleBitmap GetDC ReleaseDC BitBlt DialogBox GetDlgItem SetWindowText GetWindowText Post
Message
_itot _ttoi Unicode
Windows API
编程
及
WIN32
的API
函数
Windows API
编程
WIN32
的API
函数
Win32
API
函数
查询
Win32
API
函数
查询工具,做成了帮助文件,欢迎下载。
win32
API
编程
大全
WIN32
编程
手册 API
函数
查询手册 学习API
编程
的好帮手
记忆游戏 Win 32 SDK 实现,Windows API
函数
学习
Win 32 SDK
编程
,一些常用的API
函数
使用
C语言
70,024
社区成员
243,253
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章