谁能系统解释下api下windows消息发送与处理机制,以及同步与异步函数这些,Windows调用好像有这2类...
谁能系统解释下vc中api下windows消息发送与处理机制,尤其wm_paint和wm_imer以及同步与异步函数这些,Windows调用好像有这2类......
谁能系统解释下vc中api下windows消息发送与处理机制,尤其wm_paint和wm_imer以及同步与异步函数这些,Windows调用好像有这2类...
展开
3个回答
2013-08-11
展开全部
你想听多深?每个线程都有一个消息队列,当某种事件发生的时候系统会把消息放进消息队列这个队列是优先级队列,也就是说后入队的未必在队尾 WM_PAINT 是重绘消息,也就是系统认为你窗体需要重绘的时候发送,一般当窗体从最小化变为最大化,或者被提前的时候会产生无效区域,且产生这个消息。一般处理这个消息绘制窗体。 WM_TIMER 这个是计时器消息,也就是说你用CreatTimer创建计时器,设置时间间隔,等时间间隔到了系统会发送这个消息。一般做简单动画效果用。 同步和异步 不知道你想问什么。这种消息机制很显然是异步的。异步过程这个范围很大,不知道你想问什么。 简单的说 一个函数要是同步函数,直到函数结束,才返回。异步函数则立即返回,等函数功能结束的时候系统会通过相应的办法通知你,通知的方法很多。类似于UNIX的异步信号概念,windows中叫APC调用,异步过程调用。
2013-08-11
展开全部
WM_Timer 这种命令特殊点,它其实是一个中断,和WM_COMMAND等 消息是从你那发出的不同,它是由定时器发出,首先要SetTimer这点和DOS下C语言的定时是一样的,如果要研究下中断而对硬件编程不是很清楚,那么可以回去看下C语言定时器以及MOUSE所用的函数与结构体,比如interrupt函数就是这方面的。还要记得他要有个ID,并且最后要关定时器KillTimer。 至于更深的东西涉及硬件编程或者是系统编程这个不开放的东西很难清楚的,消息体制中最好是掌握SendMessage。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-08-11
展开全部
有些事可为,有些事不可为.问好朋友!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询