【问题标题】:Send requests to mfc views / Update views向 mfc 视图发送请求/更新视图
【发布时间】:2015-11-16 11:01:38
【问题描述】:

我有一个包含许多 mfc 视图的项目。

如何在 c++ (mfc) 中同时发送多个更新视图的请求? 如何使用 CWinthred 类?

【问题讨论】:

    标签: mfc


    【解决方案1】:
    1. 您应该从您的线程调用PostMessage(WM_NEED_TO_UPDATE_ALL_VIEWS) 将您的自定义消息(基于WM_USER)发布到您的主窗口。 (我假设是CMainFrame
    2. 当您在主应用窗口中收到WM_NEED_TO_UPDATE_ALL_VIEWS 时,您应该调用UpdateAllViews(NULL); 方法来更新所有视图。

    【讨论】:

    • 由于 UpdateAllViews() 是 CDocument 类的成员,因此应用程序必须遍历所有 Documents 才能做到这一点。此外,线程函数可能正在处理一个特定文档中的数据,因此它应该有一个指向该文档的指针并直接向它发布消息(毕竟它是从 CCmdTarget 派生的)。
    • 我同意弗拉德。但我想我已经描述了一种基本方法,可以让您了解如何做到这一点。
    猜你喜欢
    • 2020-02-27
    • 1970-01-01
    • 2023-04-05
    • 2021-10-27
    • 1970-01-01
    • 2016-09-29
    • 1970-01-01
    • 2012-07-16
    • 2014-10-16
    相关资源
    最近更新 更多