hur.cn - 华软网

 热门搜索

关于编辑框的EN_CHANGE事件

  作者:未知    来源:网络    更新时间:2011/8/26
我实现的功能:使编辑框2随着编辑框1 内容的改变而改变
发现的问题:编辑框2的内容虽然改变了,但是它的EN_CHANGE事件却没有被触发

问题详细描述如下:
有两个编辑框:Edit1,Edit2

1. 为Edit1关联一个CString类型的变量 strEdit1
   为Edit2关联一个CString类型的变量 strEdit2

2. Edit1的EN_CHANGE事件的代码如下:
   UpdateData(TRUE);
   strEdit2 = strEdit1;
   UpdateData(FALSE);

   Edit2的EN_CHANGE事件代码如下:
   TRACE("事件被触发\n");

3. 当改变Edit1的内容时,Edit2发生了改变,但是Edit2的EN_CHANGE事件却没有被触发


求高手解答~
---华软 网友回答---
用GetDlgItem(Edit2的ID)->SetWindowText(strEdit2 )一定会触发Edit2的EN_CHANGE,至于你说的情况我也不了解
---华软网友回复---
引用 1 楼 dd4979590 的回复:
用GetDlgItem(Edit2的ID)->SetWindowText(strEdit2 )一定会触发Edit2的EN_CHANGE,至于你说的情况我也不了解

这个没错,我也试过了,但是使用UpdateData的话就是触发不了,挺奇怪的
---华软网友回复---
http://social.msdn.microsoft.com/forums/en-US/vcgeneral/thread/30887bcb-af05-4bc1-90f9-84b9cde9bcff
---华软网友回复---
引用 3 楼 visualeleven 的回复:
http://social.msdn.microsoft.com/forums/en-US/vcgeneral/thread/30887bcb-af05-4bc1-90f9-84b9cde9bcff

多谢了,我明白了      
华软声明:本内容来自网络,如有侵犯您版权请来信指出,本站立即删除。