MFC EDIT控件ON_EN_CHANGE消息

如题 ,MFC的EDIT控件关联了ON_EN_CHANGE消息事件,
但是使用SetDlgItemText 修改edit控件内容以后,没有收到ON_EN_CHANGE消息,请问如何修改才能收到次消息?

mfc

3个回答

用m_edit1.SendMessage(WM_SETTEXT, 0, (LPARAM)_T("ok"));修改是可以的

图片说明

SetDlgItemText 也可以
图片说明

是属性 多行要设置为false 才行

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
ON_EN_CHANGE属于什么消息?
from msdnrnEdit Control HandlersrnMap Entry Function Prototype rnON_EN_CHANGE( , ) afx_msg void memberFxn( ); rnON_EN_ERRSPACE( , ) afx_msg void memberFxn( ); rnON_EN_HSCROLL( , ) afx_msg void memberFxn( ); rnON_EN_KILLFOCUS( , ) afx_msg void memberFxn( ); rnON_EN_MAXTEXT( , ) afx_msg void memberFxn( ); rnON_EN_SETFOCUS( , ) afx_msg void memberFxn( ); rnON_EN_UPDATE( , ) afx_msg void memberFxn( ); rnON_EN_VSCROLL( , ) afx_msg void memberFxn( ); rnrn这种的message可以在别的控件引用rn例如:我在我程序别的一个Clist里面声明一个rnON_EN_CHANGE(IDC_EDITBOX1, OnChangeEditBox)rn就可以截获edit1的change事件rnrn为什么wm_keydown这样的消息就不可以这么用呢?如果想要自己定义这样的消息怎么实现呢?
mfc edit控件怎么响应键盘消息?
比如我用edit做个密码框,输入完密码,直接按回车键就可以登录。不用鼠标去点按钮了,这样怎么做呢?
Edit控件的回车消息
对话框的Edit控件(设置了多行属性),运行的时候,在Edit中输入一行后,回车,对话框关闭了。rnrn请问:怎么能实现在Edit中回车换行功能,而不是直接关闭对话框?
edit控件消息大全
编辑框(Edit)控件实际上是一个简易的文本编辑器,用户可以在编辑框中输入可添加或插入文本。还有复制、粘贴、剪切、删除等编辑功能。   应用程序用CreateWindowEx创建编辑框控件时,可根据控件的用途在下表中选择部份常数来设定其风格属性(style)。 常数 说明 ES_MULTILINE 多行文本,指定编辑控件可以多行文本编辑,用户每按一次Enter,在当前光标次输入一个回车换行符(0Dh,0Ah),文本增加一行。 ES_LEFT 文本显示居左。 ES_CENTER 文本显示居中。 ES_RIGHT 文本显示居右。 ES_LOWERCASE 把用户输入的字母统统转换成小写字母。 ES_UPPERCASE 把用户输入的字母统统转换成大写字母。 ES_OEMCONVERT 使编辑框中的正文可以在ANSI字符集和OEM字符集之间相互转换。这在编辑框中包含文件名时是很有用的。
edit派生类中 重载ON_EN_CHANGE 没有响应
我在派生类中 重载ON_EN_CHANGErnBEGIN_MESSAGE_MAP(CColorEdit, CEdit)rn //AFX_MSG_MAP(CColorEdit)rn ON_EN_CHANGE(IDC_EDIT2, OnEnChange)rn //AFX_MSG_MAPrnEND_MESSAGE_MAP()rnrn在.h中添加:afx_msg void OnEnChange();rn在cpp中添加: void CColorEdit::OnEnChange()rn rn TRACE0("OnEnChange...\n");rn rnrn但往edit中输入的时候 不走这里面rn小弟新人,第一次发帖,有不合规矩的地方还望见谅,希望大侠们能帮帮我 谢谢~~
mfc edit控件乱码问题
vs2010编译的程序,在edit control控件输入英文没有问题,输入中文就是乱码。其他控件显示中文均正常。rnedit控件中的乱码复制到文本中显示是正常的中文。求解惑~
MFC VS2005C++ edit控件
我用VS2005c++,想获取对话框里的EDIT的字段,总是不行。 rnrnEDIT的ID号为IDC_EDIT1 rn代码如下: rnCString str; rnGetDlgItemText(IDC_EDIT1,str); rnMessageBox(str); rnrn结果就是无法获取,到底为什么?? rn
mfc edit控件显示
CString strT(_T("长沙市有限公司")); SetDlgItemText(IDC_EDIT_sysytem, strT);
MFC edit控件
我用图片作为一对话框背景,再在对话框上放 edti控件,运行后edit部分为白色,我想问一下怎么让edit部分显示对应的背景图片部分,rnBRUSH CxxxDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor) rn这种方法用过了,不行rn希望大家帮帮忙rn
MFC edit控件问题
15个edit控件 控件变量是 edit派生的 在里面加了响应信息 设置按键信息 要求就是不能同时输入重复的按键 这个键输入了 上一个清空 有高手说在pretranslatemessage 写代码 可是 就是不是知道 判断rnrnrn1: 怎么判断 那个按键已经被设置了 rnrn2: 怎么让 别的控件做出改变 第一个设置了按键的控件 比如 右键 第二个设置右键的时候 让第一个设置了右键的控件清空自己rnrnrn求高人指教 思路
MFC 中的EDIT控件
MFC中的EDIT控件,我向其中写入文本,或者 将光标插入其中,响应的是哪个事件?
MFC edit控件的一些问题
1、读入文本过大时,只能显示,不能编辑。需要设置控件的大小  m_edit.SetLimitText(1024*1024*1024); 2、读写文本中有汉字  使用fstream来进行文件读写。(CStdioFile 会出现乱码)
edit控件的WM_COMMAND消息早于WM_INITDIALOG消息?
我们知道,对话框初始化的时候,会收到一个WM_INITDIALOG消息,在这里初始化。rnrn可是我今天在一个EDIT控件的WM_COMMAND消息中,当通知码(HIWORD(LPARMA))为EN_UPDATE时(表示编辑框内容已改变),设置取EDIT控件的值,可是提示错误,因为我的一个变量是在WM_INITDIALOG时才初始化的,调试表明,EDIT控件的通知码为EN_UPDATE的WM_COMMAND消息,是早于对话框的WM_INITDIALOG消息的。rnrn是这样的吗?rnrn那么我如果想当EDIT编辑框的内容改变时,做一些事情,应该怎么办呢?
有关edit控件的消息问题
大家好,我想请问一下当Edit控件里的内容发生改变的时候他会向操作系统发出什么message呀?假如我要在edit控件里输入“he”,它是会发出两次该message么?小弟初学SDK编程,还望大家指导! rn
关于EDIT控件消息的问题!
我在用写WINDOWS下的C程序时,需要修改EDIT控件中已选定的内容。我用EM_SETSEL消息选定的内容,可找不到修改它的消息。请问用什么消息修改已选定的内容?
ON_EN_CHANGE(IDC_EDIT1, &loginDlg::OnEnChangeEdit1)//鼠标点击Edit控件不是这个消息吗?
[code=css]rnrnON_EN_CHANGE(IDC_EDIT1, &loginDlg::OnEnChangeEdit1)rn[/code]
MFC EDIT控件单行垂直居中?
如题,Google找遍了没有方法解决,这问题好象到目前都没有解决。rn听说用自绘,那应怎么样来做?rn问题解决了再加分,拜托各位大虾了!!!
实时刷新MFC的EDIT控件
今天有个同事谈到了实时显示MFC的EDIT控件,我想了下,只能添加线程才能完成这个目标。但线程中不能使用Updatedata函数。 想到两个解决方案, 1. 发送消息,把线程中的数据发送到主线程进行实时显示(我没试,但肯定可以实现)。 2. 使用getDlgItem通过ID来显示数据。 unsigned int _stdcall CtestThreadDlg::ThreadFun(LPV
MFC,Edit控件Insert()的问题
for(int i=0;i<10;i++)rnrnm_sEditPrint.Insert(0,L"sss\r\n");rnUpdateData(false);rnSleep(100);rnrn他不是一个一个的显示,而是过了大约1秒之后,啪,全显示出来了。rn我想让他一个一个的显示,怎么做呢?rnrn好郁闷,有没有其他的方法可以做?rn可以让他一个一个的显示就可以了rnrn另外的还想在这个上面出现一个倒数框;rn就是 5 4 3 2 1 一个一个显示的哪一种rn就是rnrn请稍等5秒.....rnXrnrnX那儿开始倒数rn
MFC 动态改变edit控件颜色?
我要实现这样功能。我有一列控件(24)个,用来存放24个时间,我用定时器Ontimer每隔一秒获取系统时间,然后将获取到的系统时间与我24个edit控件保存的系统时间做对比,如果当时获取的系统时间大于或者等于我保存的edit控件中的系统时间我就将edit控件的颜色变成绿色。请问我该如何实现了。我代码是这样的rn[code=c]BOOL CsolderpasteDlg::OnInitDialog()在初始 化中:rnSetTimer(1,1000,NULL);rnm_greencolor=RGB(0,255,0); // 绿色rnm_greenbrush.CreateSolidBrush(m_greencolor); // 绿色背景色 rnvoid CAboutDlg::OnTimer(UINT_PTR nIDEvent)rnrn // TODO: Add your message handler code here and/or call defaultrn switch (nIDEvent) rn rn case 1: //定时器1处理函数,定时发送数据进行更新rn rn CString str;rn SYSTEMTIME st;rn GetLocalTime(&st);rn str.Format(_T("%4d-%2d-%2d %2d:%2d:%2d"),st.wYear,st.wMonth,st.wDay,st.wHour,st.wMinute,st.wSecond);rn for(int i=0;i<24;i++)rn rn if(str==m_TTime[i])rn rn // m_colorEditText = RGB(0,255,0);rn ((CEdit *)GetDlgItem(MyStateGroup[i]))->SetBkColor(textclor);rn ((CEdit *)GetDlgItem(MyStateGroup[i]))->Invalidate();rn ((CEdit *)GetDlgItem(MyStateGroup[i]))->UpdateWindow();rn rn rnrn break; rn rn CDialogEx::OnTimer(nIDEvent);rn rnrnrn[/code]
关于mfc中的edit控件
怎样得到输入的数据,并从控件中输出呢?rn[code=C/C++]void CMyDlg::OnOK() rnrn UpdateData(TRUE);rnrn if(m_edit1.IsEmpty())rn rn ::MessageBox(NULL,"人数不能为空","错误",MB_OK);rn return;rn rn rn else if(m_edit2.IsEmpty())rn rn ::MessageBox(NULL,"报数不能为空","错误",MB_OK);rn return;rn rn elsernrn rn m_edit3……rn rn UpdateData(FALSE);rn CDialog::OnOK();rn[/code]rn我想在edit3中输出数据,从edit1,2中得到数据该怎么做?谢谢大家了……
vc 6.0 MFC edit控件
我对edit控件建了映射变量 并初始化为“请输入帐号”,如何实现在程序运行时,点一下那个输入框就让“请输入帐号”消失???
MFC Edit控件值传递,急!!!
我有一个对话框,上面有一个slider控件和一个edit控件,通过滑动slider上面的滑块来改变edit控件中显示的值(变量是CString类型的),这个没有问题。rnrn我现在想在另一个类中使用这个edit控件当前的值,[color=#FF0000]为什么传递过来的总是初始值[/color](我为edit控件设了一个初始值,也就是说,在改变slider之前显示在edit控件中的值)?下面是一些相关的代码rnrn// 对话框中rn m_edit = 27; //构造函数中设初始值rnrn rn // 通过拖动滑块来改变edit中显示的值rn void CPageDlg::OnHScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar) rn rn // TODO: Add your message handler code here and/or call defaultrn CSliderCtrl *slider = (CSliderCtrl*)pScrollBar;rn m_edit = slider->GetPos();rn UpdateData(FALSE);rnrn CDialog::OnHScroll(nSBCode, nPos, pScrollBar);rn rnrnrn // 将要被另一个类调用的函数rn int CPageDlg::Threshold()rn rn return m_edit;rn rnrnrn// 另一个类中rn CPageDlg page; // 为类CPageDlg创建一个对象pagernrnrn // 调用Threshold函数,m是int类型的变量rn if (m > page.Threshold()) // [color=#FF0000]问题是为什么page.Threshold()总是27,它不应该是当前edit中显示的数据么?[/color]rn rn ........rn rnrn[color=#FF0000]原因我基本上已经知道,我需要在调用它之前UpdateData(TRUE)一下,但是由于这个对话框中不止一个控件,所以UpdateDatarn会引起breakpoint,实在不知道要如何解决这个问题,请高手帮帮忙啊!我写了一个简单的测试程序,不知道有没有高手愿意提供邮箱帮我看一看。真的谢谢了![/color]rnrnrnrn
MFC Edit控件的值传递,急!!!
我有一个对话框,上面有一个slider控件和一个edit控件,通过滑动slider上面的滑块来改变edit控件中显示的值(变量是CString类型的),这个没有问题。rnrn我现在想在另一个类中使用这个edit控件当前的值,[color=#FF0000]为什么传递过来的总是初始值[/color](我为edit控件设了一个初始值,也就是说,在改变slider之前显示在edit控件中的值)?下面是一些相关的代码rnrn// 对话框中rn m_edit = _T("27"); //构造函数中设初始值rnrn rn // 通过拖动滑块来改变edit中显示的值rn void CPageDlg::OnHScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar) rn rn // TODO: Add your message handler code here and/or call defaultrn CSliderCtrl *slider = (CSliderCtrl*)pScrollBar;rn CString sValue =_T(" ");rn sValue.Format(_T("%d"), slider->GetPos());rn m_edit = sValue;rn UpdateData(FALSE);rnrn CDialog::OnHScroll(nSBCode, nPos, pScrollBar);rn rnrnrn // 将要被另一个类调用的函数rn int CPageDlg::Threshold()rn rn int m;rn m = atoi(m_edit); // 由于在另一个类中需要的是整型变量,所以这一步是将CString转换成intrn return m;rn rnrnrn// 另一个类中rn CPageDlg page; // 为类CPageDlg创建一个对象pagernrnrn // 调用Threshold函数,m是int类型的变量rn if (m > page.Threshold()) [color=#FF0000]// 问题是为什么page.Threshold()总是27,它不应该是当前edit中显示的数据么?[/color]rn rn ........rn
MFC SDI Dialog的Edit控件
我使用VC2005做一个基于MFC的SDI单文档应用程序,新建几个对话框体,将对话框的style属性修改为child,然后在对话框中添加Edit控件,通过SDI的单文档程序中的菜单命令调用这些对话框,可是出现一个问题,程序运行后,对话框中的Edit控件不能输入内容,其余添加的控件都可以使用,郁闷中,求高手指点。
MFC Edit控件中文件操作
mfc 中基于Edit 控件的文件打开、显示文本内容,关键字查询和定位等功能
MFC edit控件实现自动换行
必须设置Vertical Scrollbar = TRUE 必须设置MultiLine = TRUE 必须设置Horizontal Scrollbar = FALSE 必须设置Auto HScroll = FALSE 可选设置Want Return = FALSE   可选设置Auto VScroll = TRUE
求助~~关于Edit控件(MFC)
我用Edit控件写了一个小程序,当Edit控件里面的内容少的时候 可以向里面添加文字、、、但是,当Edit控件里面的内容比较多的时候,如几百KB、几MB时, 向控件输入的时候 怎么就没反应了啊,,,,跪求 各位大侠指点
MFC写EDIT控件问题
用MFC写一个EDIT的子类控件,OnChar事件中,有如下代码:rnPOINT aaa;rnaaa=this->GetCaretPos();rnaaa.x=LOWORD(CharFromPos(aaa));rn执行到最后一句时提示出错为CharFromPos是undeclared identifier,但CharFromPos是CEdit类的函数啊,请教各位这怎么解决呢?偶是菜鸟,谢谢各位
MFC之EDIT控件Enter捕捉
博客有详细教程:http://blog.csdn.net/cracent/article/details/50986365
MFC ribbon控件消息不响应
今天在做ribbon的时候发现添加了一个按钮,响应函数写完以后却没办法触发。我添加的按钮ID是ID_BTN_ABOUT,查了一下解决方案如下: 1.查看Resource.h文件,确保自动生成的ID不重复,代码如下,事实证明自动生成的重复了,自动生成的是32858,然后我手动修改为32860 #define ID_BTN_CLEAR_ALL 32858 #defi...
MFC控件接收消息问题
今天小弟看了孙鑫的一个视频教程,里面有个地方在一个对话框类函数中用了个API函数SendMessage给一个文本控件窗口发送一个WM_GETTEXT消息,是用来获得指定句柄窗口的文本的。rn看到这有点困惑了,根据之前学过的一些消息知识,感觉如果用户单击下控件,windows就会产生一个WM_COMMAND消息然后放到控件所属的应用程序的消息队列,然后由控件的父窗口用GetMessage抓到这个WM_COMMAND消息,送到它的窗口函数去处理,这个窗口函数是我们自己设计的,可以自由处理。rn但是那个视频的例子,用SendMessage()发送给控件窗口一个标准消息,应该是由控件窗口的窗口函数处理吧,我也不知道怎么设置他的窗口函数,难道是这个控件它有个默认的窗口函数,然后抓到消息后,这个窗口函数又有个默认的处理,能把文本传给发送消息者指定的缓冲区中? 不知道我的理解正不正确,如果不正确,还请大侠们帮忙指出,万分感谢
MFC中控件消息的处理
我创建了四个checkbox控件的按钮,但这四个按钮只能选择其中的一个,当有一个按钮被选中时再选择另外一个时,弹出对话框说选择冲突,我写的代码:rnvoid CShangXianDlg::OnBnClickedCheck1()rnrn // TODO: 在此添加控件通知处理程序代码rn if ( BST_CHECKED == IsDlgButtonChecked( IDC_CHECK3 ) ||rn BST_CHECKED == IsDlgButtonChecked( IDC_CHECK4 ))rn rn MessageBox("此选择与前面的选择有悖!", "sacdil_pc", MB_OK) ;rn rn rnrn但处理之后,按钮还是被选中了,我想只是弹出对话框,而按钮没有被选中,那怎么加入代码呢?求解答。
MFC监测IE控件消息
使用一个对话框,添加一个IE Browser控件。怎么能使对话框知道IE控件里点击了什么东西,并把这个东西取出来!rn 请指点,如果如示例代码更好!谢谢!
edit控件相应WM_CTLCOLOR消息是不是要用WIZZARD把dialog和edit控件都处理WM_CTLCOLOR消息???
edit控件相应WM_CTLCOLOR消息是不是要用WIZZARD把dialog和edit控件都处理WM_CTLCOLOR消息???
API EDIT控件问题 WM_KEYDOWN消息
hwndButton=CreateWindow("BUTTON","请输入文字,点我保存",WS_CHILD|WS_VISIBLE|BS_PUSHBUTTON,500,250,150,30,hwnd,(HMENU)IDV_BBUTTON,hInst,NULL); rnrn... case WM_KEYDOWN://ESC键消息 按键消息 rn rn EnableWindow(hwndButton,FALSE);rn.....rnrn这个EnableWindow()貌似失效了~~~ 牛人帮忙~~
如何传递edit控件的EnChange消息?
有个对话框,里面有个edit控件rn现在想把这个edit控件的enchange消息传递给对话框的父窗口处理,怎么做?
请问如何得到了Edit控件的回车消息??
谢谢!rn
VC++ Edit控件获得键盘消息的问题
Edit控件想验证输入,比如只能输入0~9的数字,如何实现??
EDIT控件怎么拦截WM_PASTE消息?
RT,我希望的就是当剪贴板里面有汉字的时候,粘贴效果无效。能不能帮忙给断代码,谢谢。
相关热词 c# login 居中 c# 考试软件 c# 自然语言分析 c# 分段读取文件 c# 泛型反射 c#打断点 c# 时间转多少秒 c# 线程函数加参数 c# modbus 读取 c#查询集合表

相似问题

3
MFC用create创建的edit控件样式和拖拽的不一样?
3
MFC对话框可以放多少个控件
1
MFC Grid control 如何响应里面的下拉框控件消息,获取我选中的值
2
MFC ActiveX 控件 鼠标拖动问题
0
mfc编程中listview 如何设置大小位置尺寸 完全用代码的方式实现包括创建控件 有知道的大侠吗 感谢
1
MFC串口控件波特率上限115200问题如何解决
0
关于MFC的ListControl控件与PBYTE问题
0
mfc框架中的DATE TIME PICKER 控件能实现时刻的字体变色吗?
0
MFC中自定义消息响应函数和重写OnWndMsg函数处理自定义消息有什么区别
1
MFC点击菜单项弹出对话框不能操作问题
1
mfc中listcontrol控件无法正确显示出插入的bmp图片资源
3
VS2013 MFC运行时发生错误 0xC0000005: 读取位置 0x00000000 时发生访问冲突。
1
MFC的exe调用qt的dll界面。现在是通过WM_COPYDATA发消息给qt,但是qt没有收到消息
0
halcon中disp_message函数生成的文字,如何一同显示到picture控件里面呢?
2
MFC 中的tabcontrol 控件中两个对话框之间定时器使用
2
MFC窗口怎么显示halcon采集到的图片
1
MFC exe程序在他人 电脑上运行控件不显示图片变小?
1
mfc新建空项目,写了一个滚动条,只能往下滚,往上滚出现bug,出错原因,还有怎么改?
1
VS2010 MFC 对话框程序中的控件IDC_STATIC_DRAW1(Picture Control)图层问题
3
VS2010 MFC 对话框程序中的控件IDC_STATIC_DRAW1(Picture Control)图层问题2--死循环