目标:
父窗口单击按钮,向子窗口发送一个消息;子窗口的消息处理函数中,调用列表显示函数来刷新列表数据。
我的代码:
// 父窗口
void CDlg4::OnButtonClick()
{
CDlg43 *dlg = new CDlg43();
dlg->Create(IDD_DIALOG_43,this);
if (NULL == dlg)
{
AfxMessageBox("failed");
delete dlg;
return;
}
dlg->SendMessage(WM_SHOWLIST);
delete dlg;
}
// 消息响应函数
afx_msg LRESULT CDlg43::OnShowlist(WPARAM wParam, LPARAM lParam)
{
ListAll_arc();
return 0;
}
段点调试显示可以正常进入消息处理函数,也正常调用了列表刷新函数,但列表并没有被刷新。
猜测:是不是不能用create创建一个新对话框的指针?而是要获得已经创建的子窗口的指针?我是小白,虚心求大神指点!
我不知道怎么能够获取到已经创建的子窗口的指针,如果我的猜测正确的话,能不能告诉获取已经创建的子对话框的方法?