请教:新建的控件为什么收不到/不能处理鼠标消息?马上给分
请问:新建的控件为什么收不到/不能处理鼠标消息?马上给分
请问:新建的控件为什么收不到/不能处理鼠标消息?
我的具体步骤:
1.新建MFC单文档应用程序MyApp
2.添加MFC类CMyControl,继承自CWnd
3.添加CMyControl类的消息响应函数OnMouseMove()
4.在CViewControl.h/CMainFrm.h 里定义成员变量 CMyControl cl;
5.在CViewControl.cpp-OnDraw()/CMainFrm.cpp-OnCreate() 里加入语句:
LPCTSTR strName1 = AfxRegisterWndClass(CS_HREDRAW | CS_VREDRAW,0,
CreateSolidBrush(RGB(180,0,0)),0);
cl.Create(strName1, (LPCTSTR) "Hello world ", WS_CHILD, CRect(0,0,100,30), this,NULL);
cl.ShowWindow(SW_SHOW); //NORMAL
//运行程序,能正确画出空间,但是不能响应鼠标消息
//请问各位,怎样才能处理鼠标消息
------解决方案--------------------
要说没有发现错误,不过在OnDraw里面创建控件就不合适了,你知道OnDraw在什么时候调用吗?还有一点不明白,为什么要同时在Frame和View里面创建控件?
请问:新建的控件为什么收不到/不能处理鼠标消息?
我的具体步骤:
1.新建MFC单文档应用程序MyApp
2.添加MFC类CMyControl,继承自CWnd
3.添加CMyControl类的消息响应函数OnMouseMove()
4.在CViewControl.h/CMainFrm.h 里定义成员变量 CMyControl cl;
5.在CViewControl.cpp-OnDraw()/CMainFrm.cpp-OnCreate() 里加入语句:
LPCTSTR strName1 = AfxRegisterWndClass(CS_HREDRAW | CS_VREDRAW,0,
CreateSolidBrush(RGB(180,0,0)),0);
cl.Create(strName1, (LPCTSTR) "Hello world ", WS_CHILD, CRect(0,0,100,30), this,NULL);
cl.ShowWindow(SW_SHOW); //NORMAL
//运行程序,能正确画出空间,但是不能响应鼠标消息
//请问各位,怎样才能处理鼠标消息
------解决方案--------------------
要说没有发现错误,不过在OnDraw里面创建控件就不合适了,你知道OnDraw在什么时候调用吗?还有一点不明白,为什么要同时在Frame和View里面创建控件?