首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

CRichEdit怎么响应鼠标事件

2012-01-29 
CRichEdit如何响应鼠标事件?关联了一个RichEdit的变量m_richEdit在初始化对话框中:longeventm_richEdit.

CRichEdit如何响应鼠标事件?
关联了一个RichEdit的变量m_richEdit;
在初始化对话框中:
long   event=m_richEdit.GetEventMask();
event|=ENM_MOUSEEVENTS;
m_richEdit.SetEventMask(event);

然后给RichEdit添加了一个响应NM_CLICK的函数结果仍然不能相应鼠标单击怎么回事啊?谢谢!

[解决办法]
在你的父窗口类中重写PreTranslateMessage虚函数,假定你的父类为对话框
BOOL CTestDlg::PreTranslateMessage(MSG* pMsg)
{



if( pMsg-> message == WM_LBUTTONDOWN )
{
HWND hWnd = ::GetFocus();
int iID = ::GetDlgCtrlID(hWnd);
if(iID == IDC_RICHEDIT1)
{
MessageBox( "RichEdit click! ");
}
}

return CDialog::PreTranslateMessage(pMsg);
}

热点排行