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

怎么使CEdit响应鼠标单击,使得CEdit的文字处于被选中状态

2012-01-18 
如何使CEdit响应鼠标单击,使得CEdit的文字处于被选中状态为了实现这个目标,从CEdit派生出一个子类CNewEdit

如何使CEdit响应鼠标单击,使得CEdit的文字处于被选中状态
为了实现这个目标,从CEdit派生出一个子类CNewEdit。然后响应鼠标左键单击事件OnLButtonDown,如下:

void   CNewEdit::OnLButtonDown(UINT   nFlags,   CPoint   point)  
{
//   TODO:   Add   your   message   handler   code   here   and/or   call   default
SetSel(0,   -1);
CEdit::OnLButtonDown(nFlags,   point);
}

然后在使用CEdit的对话框中把控件子类化。可是不行。。。

我也曾怀疑自己的问题,然后我尝试响应鼠标移动事件OnMouseMove,仍然是调用SetSel(0,   -1)。这样就没有问题。但是OnMouseMove多少用起来不方便,不能输入多个字符,因为每输入一个字符就会全选,然后输入下一个会把以前的覆盖了。

请教一下,为什么响应鼠标左键单击事件不能选中文字?

[解决办法]
jf
[解决办法]
JF
[解决办法]
这种情况用不着重载。直接在父窗口中响应WM_LBUTTONDOWN,在里面SetSel(0, -1)就OK了。

楼上的两位太懒了,天道酬勤啊:)。
[解决办法]
不用重载
直接在窗口中响应
[解决办法]
给我
[解决办法]
不需要重载的,直接在父窗口中响应WM_LBUTTONDOWN就行了!

热点排行