MFC在对象之间发送信号

时间:2012-01-17 17:29:44

标签: c++ mfc handler signals

我必须在两个对象之间发送信号和数据。接收器必须处理它。 我可以在MFC中的对象之间发送信号吗?它是否存在Messenger或其他东西?

2 个答案:

答案 0 :(得分:2)

Message Maps 有关于用户定义的Windows消息的部分,其中包含您的问题

答案 1 :(得分:0)

如果对象归UI线程所有,那么方法是使用RegisterWindowsMessage注册您自己的消息,然后使用PostMessage将消息发送到主应用程序窗口。然后,主窗口类中的消息处理程序可以将调用转发给目标对象中的处理程序。请参阅其他答案中的“消息地图”链接。

如果对象由不同的线程创建/拥有,而不是由UI线程拥有,则消息映射应答不起作用。在这种情况下,您需要使用回调并自行管理线程同步,或使用第三方库。