关于在控件加菜单的有关问题请问,谢谢指点!
关于在控件加菜单的问题请教,多谢指点!!!
在CDialog中增加CRichEditCtrl控件,我想在控件中右键弹出菜单然后选择响应,我完成代码之后发现消息都被CDialog截获了(在控件外可以弹出来,但是控件内不行)
谁能指点一点小弟,送分送祝福,呵呵!!!
------解决方案--------------------
怀疑消息响应错误。
应该让控件响应你的鼠标右键,而不是对话框
------解决方案--------------------
子类化CRichEditCtrl,响应鼠标右键消息。
或重载PreTranslateMessage函数,当有鼠标右键消息时,判断鼠标是否位于控件内
------解决方案--------------------
你直接写CRichEditCtrl控件的右击事件
------解决方案--------------------
m_ctRichEditCtrl//定义的CRichEditCtrl的名称
CRect rect;
m_ctRichEditCtrl.GetWindowRect(&rect);//获取ctRichEditCtrl窗口大小。
ClientToScreen(&rect);//转化坐标系。
rect.PtInRect(point);//判断鼠标是否在rect的控件范围内
如果在加载弹出式菜单。
在CDialog中增加CRichEditCtrl控件,我想在控件中右键弹出菜单然后选择响应,我完成代码之后发现消息都被CDialog截获了(在控件外可以弹出来,但是控件内不行)
谁能指点一点小弟,送分送祝福,呵呵!!!
------解决方案--------------------
怀疑消息响应错误。
应该让控件响应你的鼠标右键,而不是对话框
------解决方案--------------------
子类化CRichEditCtrl,响应鼠标右键消息。
或重载PreTranslateMessage函数,当有鼠标右键消息时,判断鼠标是否位于控件内
------解决方案--------------------
你直接写CRichEditCtrl控件的右击事件
------解决方案--------------------
m_ctRichEditCtrl//定义的CRichEditCtrl的名称
CRect rect;
m_ctRichEditCtrl.GetWindowRect(&rect);//获取ctRichEditCtrl窗口大小。
ClientToScreen(&rect);//转化坐标系。
rect.PtInRect(point);//判断鼠标是否在rect的控件范围内
如果在加载弹出式菜单。