VC驿站

 找回密码
 加入驿站

QQ登录

只需一步,快速开始

搜索
查看: 973|回复: 4

[已解决]MFC编辑框OnEnChange里设置文本显示访问冲突

[复制链接]
29_avatar_middle
最佳答案
0 
在线会员 发表于 2021-7-5 22:10:12 | 显示全部楼层 |阅读模式
void Register::OnEnChangeEdit11()
{
        // TODO:  如果该控件是 RICHEDIT 控件,它将不
        // 发送此通知,除非重写 CDialog::OnInitDialog()
        // 函数并调用 CRichEditCtrl().SetEventMask(),
        // 同时将 ENM_CHANGE 标志“或”运算到掩码中。
        方法一:SetDlgItemText(IDC_EDIT1_1,_T("sss"));
        方法二:GetDlgItem(IDC_EDIT1_1)->SetWindowText(_T("sss"));
        方法三:m_edit_1.SetWindowText(_T("sss"));


下面这个三个方法在这个响应函数里设置编辑框总是会弹出访问冲突
0x0099EB53 处有未经处理的异常(在 网络编程客户端.exe 中): 0xC00000FD: Stack overflow (参数: 0x00000001, 0x034E2F3C)。
0x0099EB53 处有未经处理的异常(在 网络编程客户端.exe 中): 0xC0000005: 写入位置 0x034E0B6C 时发生访问冲突。
然后跳转到        CAtlTraceModule::fnCrtDbgReport_t pfnCrtDbgReport = NULL;
请问这是什么问题?
在其他地方这三个方法都行就这里面不行,我就想让编辑框只能输入字母和数字。
最佳答案
00_avatar_small
2021-7-8 18:57:55
假如消息机制可以当成单独线程来理解
那么可以在线程内指针指向主窗体来访问控件
你自己试一试,,我懒得画控件,没有调试
  1.         C项目名称Dlg *dlg = (C项目名称Dlg*)param;
  2.         SetDlgItemText(dlg->IDC_EDIT1_1,_T("sss"));
复制代码





上一篇:MFC 的问题
下一篇:想看TabSheet.hTabSheet.cpp文件
29_avatar_middle
最佳答案
0 
ico_lz  楼主| 发表于 2021-7-6 19:42:36 | 显示全部楼层
就是子对话框里的编辑框不行,主对话框里的可以,子对话框里的会起冲突
00_avatar_middle
最佳答案
13 
在线会员 发表于 2021-7-8 18:57:55 | 显示全部楼层    本楼为最佳答案   
bestAnswer
假如消息机制可以当成单独线程来理解
那么可以在线程内指针指向主窗体来访问控件
你自己试一试,,我懒得画控件,没有调试
  1.         C项目名称Dlg *dlg = (C项目名称Dlg*)param;
  2.         SetDlgItemText(dlg->IDC_EDIT1_1,_T("sss"));
复制代码

29_avatar_middle
最佳答案
0 
ico_lz  楼主| 发表于 2021-7-8 22:43:13 | 显示全部楼层
oyxbl 发表于 2021-7-8 18:57
假如消息机制可以当成单独线程来理解
那么可以在线程内指针指向主窗体来访问控件
你自己试一试,,我懒得画 ...

试了,我好想搞懂了他为什么起冲突了,当发送一字母进去,它响应:OnEnChange后创建线程,在里面SetDlgItemText,然后他会一直反复的响应OnEnChange,创建线程。因为SetDlgItemText改变了里面的内容,估计子对话框里面没有在:OnEnChange里阻断响应,但主对话框里有阻断。估计是我这2012vs版本的bug吧。
29_avatar_middle
最佳答案
0 
ico_lz  楼主| 发表于 2021-7-8 22:46:01 | 显示全部楼层
oyxbl 发表于 2021-7-8 18:57
假如消息机制可以当成单独线程来理解
那么可以在线程内指针指向主窗体来访问控件
你自己试一试,,我懒得画 ...

感谢感谢,没试过你这方法,我还没发现,我看到那个标一直重置到前面,估计就是一直重新创建线程,然后set,这样反复循环不冲突才怪。
您需要登录后才可以回帖 登录 | 加入驿站 qq_login

本版积分规则

×【发帖 友情提示】
1、请回复有意义的内容,请勿恶意灌水;
2、纯数字、字母、表情等无意义的内容系统将自动删除;
3、若正常回复后帖子被自动删除,为系统误删的情况,请重新回复其他正常内容或等待管理员审核通过后会自动发布;
4、感谢您对VC驿站一如既往的支持,谢谢合作!

关闭

站长提醒上一条 /2 下一条

QQ|小黑屋|手机版|VC驿站 ( 辽ICP备09019393号-4 )|网站地图wx_jqr

GMT+8, 2023-9-28 03:43

Powered by CcTry.CoM

© 2009-2021 cctry.com

快速回复 返回顶部 返回列表