消息的发送可分为 4 种方式。 ①同一窗口内收发:消息用宏定义,使用成员函数 PostMessage() 或 SendMessage() 或 SendNotifyMessage() 发送。 ②应用程序之间收发:消息用 const int WM_... = RegisterWindowMessage(_T( "... ")); 定义,使用 API 函数 ::Postmessage() 或 ::SendMessage() 或 ::SendNotifyMessage() 发送。第一个参数使用HWND_BROADCAST,向其它程序发;使用 NULL,向自己发。 ③主窗口向子窗口发:消息用宏定义,使用成员函数 SendMessageToDescendants() 发送。 ④子窗口向主窗口发、同一应用程序的窗口之间互发:要使用②的方法。 在发送窗口类中添加成员变量 m_SendToHwnd,想办法将接受窗口成员函数 GetSafeHwnd() 的返回值赋给 m_SendToHwnd。使用②中函数,第一个参数传入 m_SendToHwnd 即可。 如: C*Dlg dlg1; C#Dlg dlg2; dlg1.m_SendtoHwnd = dlg2.GetSafehwnd(); 或: void C*Dlg::***() { C#Dlg dlg; dlg.m_SendtoHwnd = this-> GetSafehwnd(); }
消息发送
最新推荐文章于 2018-12-25 14:24:39 发布