C MFC设置/附加文本从Worker线程中从富裕的控件中进行
c++ MFC setting/appending text to a richedit control from a worker thread
从主线程中我可以使用成员变量这样:
CString updatetext;
updatetext.Format(L"character length: %dn", length );
long nStart, nEnd;
m_richeditcont.
GetSel(nStart, nEnd);
m_richeditcont.SetSel(nEnd, nEnd);
m_richeditcont.ReplaceSel(updatetext);
但是,如果没有工人线程,该程序将悬挂。您不能使用工作线程中的成员变量,那么我将如何使用Worker线程中存储在UpdateText中的文本更新富裕的控件?
我没有任何实际代码,上面的代码只是一个示例,我只想知道如何将存储在UpdateText中的文本附加到Worker线程中的RichEdit控件中。
工人线程可以使用后消息或sendmessage将数据发送到GUI线程。那么GUI线程应负责修改GUI。在此处查看常见问题12:
http://vcfaq.mvps.org/mfc/index.htm
Worker线程应在堆上分配CSTRING,然后在自定义消息的LPARAM或WPARAM中发布指针。GUI线程将指针置于CSTRING*并更新控件。最后,GUI线程从堆中删除CSTRING。
相关文章:
- 从不同线程使用int64的不同字节安全吗
- 删除一个线程上有数百万个字符串的大型哈希映射会影响另一个线程的性能
- 在C++中使用cURL和多线程
- 为什么我的C#代码在调用回C++COM直到Task时会暂停.等待/线程.加入
- 在cuda线程之间共享大量常量数据
- 如何将元素添加到数组的线程安全函数?
- 线程,如果else语句,都是错误的上下文切换后,会发生什么
- C++Boost Asio Pool线程,带有lambda函数和传递引用变量
- 在createdialog创建的窗口中捕获用于编辑控件的OnMouseMove消息
- GLFW & ImGui:从 main 以外的线程创建 ImGui 控件
- C MFC设置/附加文本从Worker线程中从富裕的控件中进行
- 在 MFC 对话框和自己的线程上的 OpenGL 控件之间传递消息
- 如何在VS2010中创建STA(单线程单元)控件
- 在线程中更改Windows窗体控件
- 如何从工作线程访问MFC控件
- 正在运行的线程中静态控件的重绘窗口
- 是否有用于多线程内存分配器的验证套件
- 将 MFC 控件传递给线程或传递句柄
- 如何使一个线程在MFC中移动滑块控件相对于正在播放的音频文件
- 如何使用 MethodInvoker 委托在 cli c++ 中同步对控件线程的调用