mfc自定義消息 wparam lparam 參數傳遞指針

1.在.cpp文件中添加
#define  WM_MY_DELETEITEM  WM_USER+100

2.在.h文件

afx_msg LRESULT OnDeleteItem(WPARAM,LPARAM);

3、在.cpp文件中添加

ON_MESSAGE(WM_MY_DELETEITEM,&CDDSServerDlg::OnDeleteItem)

4、定義函數OnDeleteItem

5.發消息

SendMessage或者PostMessage

CTreeItem* pItem ;

PostMessage(WM_MY_DELETEITEM,reinterpret_cast<WPARAM>((void*)(&pItem)),0);//pitem是指針,本來就是地址 不需要&

PostMessage(WM_MY_DELETEITEM,reinterpret_cast<WPARAM>((void*)(pItem)),0);

wparam和lparam工作:將需要傳遞的參數包裝成一個結構體對象,在發出消息的時候把這個對象的地址作爲參數。因此,在調用時處理函數就可以拿到這些數據了。微軟怕一個地址不夠用,所以給了兩個作爲備用。

參數轉換爲wparam:(WPARAM)((void*)&m_param)

wparam轉換爲參數類型: pItem = reinterpret_cast<CSuperGridCtrl::CTreeItem*>((void*)wParam);

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章