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

转自:https://www.jb51.net/article/68630.htm

这篇文章主要介绍了C++ Custom Control控件向父窗体发送对应的消息的相关资料,需要的朋友可以参考下

.
.

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

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

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

?

1
2
3
4
5
6
7
8
9
10
11

NMHDR nm;
nm.code = 123456; // 这里是消息的区别代码
nm.hwndFrom = m_hWnd;//这是控件的HWND句柄
nm.idFrom = GetDlgCtrlID();//这是得到的对话框的ID

CWnd* pWnd;
pWnd = GetParent(); //得到父窗体 窗口
if (pWnd != NULL)
{
pWnd->SendMessage(WM_NOTIFY, nm.idFrom, (LPARAM)&nm); //向父窗体发送消息
}

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

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

?

1
2
3
4
5
6
7
8
9
10

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号

可以通过下面的方式查到

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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值