繁体   English   中英

如何从UI线程类Run()函数在对话框编辑框中显示字符串

[英]How to display a string in a dialogs edit box from a UI Thread Classes Run() function

我有一个基于对话框的应用程序。 默认情况下,Visual Studio创建一个App和一个Dlg类。 我在对话框中添加了按钮,编辑框等。 当用户单击对话框上的“开始”按钮时,它将运行5分钟的自动测试,并在编辑框中提供文本更新和进度。 既然这很好用,我希望用户能够在运行自动测试时单击其他按钮和对话框中的复选框。 为此,我使用名为CMyThread的类向导创建了一个UI线程类。 在CMyThread中,我将按下START按钮时执行的代码移至CMyThread中的Run()函数。 我计划单击“开始”按钮时调用CMyThread Run()函数。 在5分钟的自动测试运行期间,我仍然希望在对话框编辑框中获得进度和更新。 如何将字符串从CMyThread Run()发送到对话框中的编辑框,并将其显示给用户?

通过让MyThread类发送要由对话框的消息循环处理的消息来完成此操作。

在SO上还有其他类似的问题,提供了有用的答案。 如何从另一个线程通知CDialog对象已完成的任务?

这是一篇带有示例代码的文章http://forums.codeguru.com/showthread.php?312454-MFC-Thread-How-to-access-UI-elements-from-a-thread-in-MFC

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM