使用SendMessage()函数将父对话框中的自定义消息发送到子对话框

时间:2016-01-28 13:53:24

标签: visual-c++ mfc

有多种方法可以使用 SendMessage()

  1. WIN32API模式
  2.   

    :: SendMessage(h,MY_MSG,0,0);

    1. MFC模式

      让我们的ptr有子对话框句柄然后我们可以使用这个模态

    2.   

      ptr-> SendMessage消息(MY_MSG,0,0);

      但是,如果我在父对话框 see this中单击按钮,我怎样才能获得子对话框句柄..我编写代码

       void CCustomMessageDlg::OnBnClickedOpen(){   
      
           MyDialog2 d2(IDD_CHILD_DIALOG);
           d2.DoModal();
      
               }
      

      我需要在单击按钮后使用SendMessage()API向子对话框发送自定义消息。你能否为这个问题建议一个解决方案

1 个答案:

答案 0 :(得分:1)

setIncomingAndReceive()返回后,您无法向对话框发送消息,因为该对话框已被销毁。

如果您想将数据传递到对话框,可以在子对话框中添加成员变量,例如:

DoModal()

然后使用:

CString m_strMyData;

并从子对话框中访问 MyDialog2 d2(IDD_CHILD_DIALOG); d2.m_strMyData = "Test"; d2.DoModal();