当MOUSE移到一个窗口外面里会收到什么消息?(此窗口并未失去焦点)

greensleeve 2002-04-12 07:56:22
有人知吗?
...全文
63 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
dawninautumn 2002-05-03
  • 打赏
  • 举报
回复
给我一份好吗?dawninautumn@21cn.com
谢谢!
swalo 2002-04-28
  • 打赏
  • 举报
回复
关于这个问题的回答嘛,在下同意 chief(大副)和sufeng(sufeng)的观点。
于是照做了,果然不错!
如果有人需要demo project可以留下email,我给他发一份过去。(我还真热情)
readme.txt of this project:
This Project Named AllInput is made for testing mouse left message.
[Appearance]
click <view\start>to enable mouse leave message.
when mouse left the client eara "mouse left!" is shown on status bar.
note that 1.each start hold mouse leave message once.
2.mouse leave includes mouse moving to another overlapped window.
[realization]
1.creat a MDI project.
2.add a menu named "start" id="ID_VIEW_START"
3.hold the process of ID_VIEW_START in CAllInputView like this:
void CAllInputView::OnEditStart()
{
TRACKMOUSEEVENT csTME;
csTME.cbSize = sizeof(csTME);
csTME.dwFlags = TME_LEAVE;
csTME.hwndTrack = m_hWnd;
::_TrackMouseEvent(&csTME);
}
4.in AllInputView.h add
LRESULT OnMouseLeave(WPARAM wParam, LPARAM lParam);
5.in AllInputView.cpp add
ON_MESSAGE(WM_MOUSELEAVE, OnMouseLeave)//in message map eara.

// Handler for WM_MOUSELEAVE
LRESULT CAllInputView::OnMouseLeave(WPARAM wParam, LPARAM lParam)
{
char text[100];
CStatusBar* pStatus=(CStatusBar*)
AfxGetApp()->m_pMainWnd->GetDescendantWindow(ID_VIEW_STATUS_BAR);
if(pStatus)
{
wsprintf(text,"mouse left!!!");
pStatus->SetPaneText(0,text);
}
return 0;
} // End of OnMouseLeave
swalo 2002-04-27
  • 打赏
  • 举报
回复
我也碰到类似问题。关注!加入收藏夹!
79179730 2002-04-25
  • 打赏
  • 举报
回复
WM_MOUSEMOVE
sufeng 2002-04-25
  • 打赏
  • 举报
回复
用_TrackMouseEvent(..)可以调用MouseLeave(WPARAM,LPARAM)回调函数,类似于vb中的MouseOver事件
delphihero 2002-04-12
  • 打赏
  • 举报
回复
没有消息,除非是hook程序,或者捕捉了鼠标
chief 2002-04-12
  • 打赏
  • 举报
回复
通常情况下你是收不到什么消息的
有两种方法可以使收到鼠标移出窗口的消息

1,使用SetCapture()
这时你可以收到所有的mousemove消息

2、使用TrackMouseEvent()
你可以指定想要收到的事件
有鼠标移入,鼠标移出...
realdreamer 2002-04-12
  • 打赏
  • 举报
回复
如果你要获得鼠标不在窗口里边时的消息。

你得用 鼠标捕获函数

SetCapture
GetCapture
ReleaseCapture

具体参考 MSDN
zxs218 2002-04-12
  • 打赏
  • 举报
回复
不会收到任何消息,除非你使用的SetCapture函数,这时所有的鼠标消息都会发送到你捕获的窗口
row 2002-04-12
  • 打赏
  • 举报
回复
分数太少,分数太少,分数太少
realdreamer 2002-04-12
  • 打赏
  • 举报
回复
SORRY, 我看错了,以为是移动到窗口里面,

再次 SAY SORRY
liqi 2002-04-12
  • 打赏
  • 举报
回复
好象什么消息也不生成.
realdreamer 2002-04-12
  • 打赏
  • 举报
回复
WM_MOUSEMOVE
WM_SETCURSOR

.....等等

请用 SPY++ 来监视生成的消息
greensleeve 2002-04-12
  • 打赏
  • 举报
回复
有人关注吗?应该响应什么消息?

16,472

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧