📄 subject_50559.htm
字号:
<p>
序号:50559 发表者:louis_p_j 发表日期:2003-08-24 15:07:17
<br>主题:请熟悉新斑《深入浅出MFC》的朋友进来一下!疑问!
<br>内容: 我正以开始我的VC++的争程。正进入MFC新斑的第二章中的<BR>消息映射(message map)的皱形。<BR> 代码是这样的:<BR> ........ LRESULT CallBack winproc(HWND hwnd ,UITN massage<BR> Wparam wparam,LPARAM lparam)<BR>{ <BR> int i <BR> for(i=0;i<dim(_*massage[i].nmassage)<BR> if(massage==massageEntriess[i].nmassage){<BR> return ((_*massageEntriess[i].nmassage.pfn)(hwnd,<BR> massage,wparam,lparam)):<BR>} <BR> return(Defmindowproc(hwnd,massage,wparam,lparam)):<BR>}<BR>///////////<BR> LONG Oncomand(HWND hwnd ,UITN massag<BR> Wparam wparam,LPARAM lparam)<BR>{ int i <BR> for(i=0;i<dim(_*massage[i].nmassage)<BR> if(Loword(wparam)==commandEntriess[i].nmassage){<BR> return ((_*commandEntriess[i].nmassage.pfn)(hwnd,<BR> massage,wparam,lparam)):<BR>)<BR> 上面的,怎么是一个用massage,一个用Loword(wparam)<BR>传消息的啊!!!!!<BR>急急急啊!!!!!<BR> <BR>
<br><a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p>
<hr size=1>
<blockquote><p>
回复者:vcinside 回复日期:2003-08-24 21:39:31
<br>内容:不明白你问的<BR>不过是这样的,mfc用message参数进行消息分类,用后面两个参数传递值<BR>除了你自定义的消息,在消息message参数中存在的,都是定义好的wm_xxx<BR>等等。<BR>我说的可能也不太明白,但没有说错哦!
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
<font color=red>答案被接受</font><br>回复者:Cuiyi 回复日期:2003-08-26 11:40:31
<br>内容:因为你应该知道,在windows中,WM_COMMAND是个很特殊的消息,其 wParam参数是个32位的值,其高16位代表发出此消息的控件ID,而低16位代表的是发生的事件的类型(具体的你去查一下手册吧),也就是说会有很多的不同控件事件都是以WM_COMMAND来表示的,所以在上面的程序中,我们对于WM_COMMAND消息是不能直接用massage==massageEntriess[i].nmassage这条语句来判断消息的类型的,而要分别察看每一个WM_COMMAND消息的低16位,来获得具体的消息!就是这样!<BR>好好努力啊,侯捷先生的书很是经典啊
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -