程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> C++入門知識 >> C++ Custom Control控件 向父窗體發送對應的消息,customcontrol

C++ Custom Control控件 向父窗體發送對應的消息,customcontrol

編輯:C++入門知識

C++ Custom Control控件 向父窗體發送對應的消息,customcontrol


向父窗體發送消息 ,這裡只講發送 WM_NOTIFY  消息, 其它消息是相同的

在 控件中的某個函數中 設置發送消息的程序

  首先定義一個WM_NOTIFY消息的專用結構.

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的虛函數

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號

可以通過下面的方式查到

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved