⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 subject_30761.htm

📁 一些关于vc的问答
💻 HTM
字号:
<p>
序号:30761 发表者:shenyan 发表日期:2003-02-26 11:13:19
<br>主题:sendmessage后面的参数问题。
<br>内容:我要在一个类中发送OnMouseMove消息到另一个类中(父窗口).代码如下:void CTipBox::OnMouseMove(UINT nFlags, CPoint point)<BR>{<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;CWnd *pWnd=(CWnd*) GetParent();<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;pWnd-&gt;SendMessage(WM_MOUSEMOVE,(WPARAM)nFlags,(LPARAM)point);<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;CComboBox::OnMouseMove(nFlags, point);<BR>}<BR>因为子窗口阻挡了父窗口接受消息.所以要发送消息到父窗口,但是,参数SendMessage的参数(LPARAM)point编译通不过,无法强制转换.但父窗口的OnMouseMove后面的参数就是这样的,我有不能自己改写,请问怎么办呢.急啊!!!
<br><a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p>
<hr size=1>
<blockquote><p>
回复者:74LS373 回复日期:2003-02-26 11:21:47
<br>内容:point是一类,当然不能强制转换,<BR>pWnd-&gt;SendMessage(WM_MOUSEMOVE,(WPARAM)nFlags,(LPARAM)(point.y)|(LPARAM)(point.x)|););
<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>回复者:74LS373 回复日期:2003-02-26 11:22:51
<br>内容:错了<BR>pWnd-&gt;SendMessage(WM_MOUSEMOVE,(WPARAM)nFlags,((LPARAM(point.y))&lt;&lt;16)|(LPARAM)(point.x)|);
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:shenyan 回复日期:2003-02-26 14:14:48
<br>内容:谢你啦,的确是这样的,但我想知道,LPARAM内高16位的point.y,和低16位的point.x是如何传给OnMouseMove(nFlags, point)的参数point<BR>的呢?难道系统就知道高16位传给y,低16位传给x吗.或者我下次要传一个结构怎办呢.请楼上的解答一下吧.不胜感激!!!
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:74LS373 回复日期:2003-02-26 14:36:28
<br>内容:WM_MOUSEMOVE是系统定义的消息;WindowProc()中代码就负责把LPARAM解析开来,着都是MFC作好了的。如果你要传一个结构,就重载WindowProc函数
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:shenyan 回复日期:2003-02-26 15:43:13
<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 + -