C++ Custom Control控件向父窗体发送对应的消息

时间:2021-05-20

向父窗体发送消息 ,这里只讲发送 WM_NOTIFY 消息, 其它消息是相同的

在 控件中的某个函数中 设置发送消息的程序

首先定义一个WM_NOTIFY消息的专用结构.

NMHDR nm;nm.code = 123456; // 这里是消息的区别代码nm.hwndFrom = m_hWnd;//这是控件的HWND句柄nm.idFrom = GetDlgCtrlID();//这是得到的对话框的IDCWnd* pWnd; pWnd = GetParent(); //得到父窗体 窗口 if (pWnd != NULL) { pWnd->SendMessage(WM_NOTIFY, nm.idFrom, (LPARAM)&nm); //向父窗体发送消息 }

这样就可以将消息发送到父窗体了.

在父窗体的代码中,只需要处理WM_NOTIFY消息就可以了,也就是实现on_notify的虚函数

BOOL CMyControlDlg::OnNotify(WPARAM wParam, LPARAM lParam, LRESULT* pResult){ if ((UINT)wParam == IDC_CUSTOM2) { AfxMessageBox(_T("成功")); } return CDialogEx::OnNotify(wParam, lParam, pResult);}

IDC_CUSTOM2 这是任何一个资源都会有的一个ID号

可以通过下面的方式查到

以上所述就是本文的全部内容了,希望大家能够喜欢。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章