亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > C > 正文

vc中SendMessage自定義消息函數用法實例

2020-01-26 15:12:49
字體:
來源:轉載
供稿:網友

本文實例講述了vc中SendMessage自定義消息函數用法,分享給大家供大家參考。具體如下:

SendMessage的基本結構如下:

復制代碼 代碼如下:
SendMessage(
    HWND hWnd,  //消息傳遞的目標窗口或線程的句柄。
    UINT Msg, //消息類別(這里可以是一些系統消息,也可以是自己定義,下文具體介紹,)
    WPARAM wParam, //參數1 (WPARAM 其實是與UINT是同種類型的,
  //在vc編譯器中右鍵有個“轉到WPARAM的定義”的選項可以查看。
    LPARAM lParam); //參數2

其中一些參數的由來如下:

//typedef unsigned int UINT;
//typedef UINT WPARAM;
//typedef LONG LPARAM;
//typedef LONG LRESULT;

例如可以用以下語句:

復制代碼 代碼如下:
::SendMessage(this->m_hWnd, WM_MY_DOSOME, (WPARAM) 0, (LPARAM) 0);

這里我發送的消息是本窗體接收的,所以句柄用:this->m_hWnd
這里的消息類別WM_MY_DOSOME就是我自定義的,
在接收消息的窗體或線程所在的頭文件里:

復制代碼 代碼如下:
#define WM_MY_DOSOME WM_USER+1 // do something

當然你還可以定義更多如:
復制代碼 代碼如下:
#define WM_DOOTHER WM_USER+2 // do other

表示要做一些事情。

到這里,可能大家還是對消息類別有點模糊,不要擔心,下面很快就講到。
我們發了一個消息出去,那么接收方要能識別這個消息是干什么,就是通過消息類別來區分,并且開始去做這個消息對應要處理的事情。如下:

一、編寫一個事情:
我們在接收窗體里定義一個這樣的事情(過程),

復制代碼 代碼如下:
afx_msg LRESULT DoSomeThing(WPARAM iParam1,LPARAM iParam2)
{
 MessageBox("收到消息了,我要開始做一些事情了。","收到",MB_OK);
 //可以運用iParam1,iParam2 來做一些事情。
 return 0;
}

這個事情有3點大家要注意,非常重要:

1. 使用了afx_msg,并且要將afx_msg LRESULT DoSomeThing(WPARAM iParam1,LPARAM iParam2)
改寫到頭文件的
//{{AFX_MSG
//。。。改寫到這里,顏色會變成灰的。這一點非常重要。
//}}AFX_MSG
2. 參數有2個,WPARAM iParam1,LPARAM iParam2,哪怕沒有東西傳進來也要寫,不然會吃苦頭的,vc里不會提醒你少寫了一個,
但一些莫名奇妙的事情會發生。
3. 類型用 LRESULT,完了要return 0;

二、讓接收方知道什么時候做這個事情:
我們在

復制代碼 代碼如下:
//{{AFX_MSG_MAP
//。。。這里寫上
ON_MESSAGE(WM_MY_DOSOME,DoSomeThing)
//如果還有其他消息就再寫一個
ON_MESSAGE(WM_DOOTHER,DoOther)
//}}AFX_MSG_MAP

到這里,當你用SendMessage,發了一個WM_MY_DOSOME類型的消息過來的時候,接收方就會去做DoSomeThing(WPARAM iParam1,LPARAM iParam2)
發了一個WM_DOOTHER類型的消息過來的時候,接收方就會去做DoOther(WPARAM iParam1,LPARAM iParam2)當然,這里DoOther我還沒有定義。

這樣就是一個完整的消息發送與接受過程,這里沒有詳細講參數,iParam1,因為還沒有用到很復雜的情況,

在頭文件里:

復制代碼 代碼如下:
#define WM_MYMSG  WM_USER+5 //自定義一個消息

afx_msg void OnMyMessage(WPARAM wParam, LPARAM lParam); //自定義消息的處理函數聲明

在.cpp文件里:

復制代碼 代碼如下:
ON_MESSAGE(WM_MYMSG, OnMyMessage)
//利用ON_MESSAGE()宏在自定義消息與其處理函數間建立映射關系

void CModelessDlg::OnMyMessage(WPARAM wParam, LPARAM lParam)
//從lParam中取出CString對象的指針,并將字符串內容在IDC_MSGEDIT中顯示出來
{

    CString *str;
    str=(CString *)lParam;

    SetDlgItemText(IDC_EDIT,*str);
}

按下按鈕發送消息

復制代碼 代碼如下:
void CModelessDlg::OnMsgBTN()
{
 CString str= "自定義消息被觸發了!";
 SendMessage(WM_MYMSG, 0, (LPARAM) &str);
 //給ModelessDlg自己發一個自定義的消息
}

希望本文所述對大家的VC程序設計有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产精品免费看久久久香蕉| 欧美大片网站在线观看| 亚洲天堂成人在线| 日韩亚洲国产中文字幕| 国产欧美精品一区二区三区-老狼| 7777kkkk成人观看| 8x海外华人永久免费日韩内陆视频| 亚洲一区二区三区毛片| 国产成人精品视频在线观看| 国产精品一区二区av影院萌芽| 欧美激情综合色| 精品国产一区二区三区在线观看| 亚洲国产另类久久精品| 欧美性一区二区三区| 久久人人爽人人爽人人片av高清| 亚洲jizzjizz日本少妇| 九九视频这里只有精品| 日韩美女视频免费在线观看| 国产午夜精品免费一区二区三区| 欧美亚洲国产视频小说| 一区二区三区精品99久久| 色婷婷亚洲mv天堂mv在影片| 伦理中文字幕亚洲| 91精品国产免费久久久久久| 亚洲精品www久久久| 亚洲人精选亚洲人成在线| 亚洲国产另类 国产精品国产免费| 狠狠操狠狠色综合网| 国产成人av在线| 国产精品久久一| 亚洲精品之草原avav久久| 欧美日韩午夜剧场| 久久久av电影| 久久久久国产精品一区| 久久久久九九九九| 亚洲aa在线观看| 国产精品国产福利国产秒拍| 色偷偷av一区二区三区| 亚洲影院高清在线| 国产啪精品视频| 2019亚洲日韩新视频| 国产视频观看一区| 亚洲a级在线播放观看| 最新国产精品拍自在线播放| 国产精品第2页| 91在线视频免费| 97精品一区二区视频在线观看| 欧美在线日韩在线| 欧美一区二区三区免费观看| 国产成人精品一区二区| 综合欧美国产视频二区| 欧美xxxx做受欧美.88| 精品久久国产精品| 亚洲福利在线播放| www.日本久久久久com.| www.99久久热国产日韩欧美.com| 精品亚洲一区二区三区在线观看| 91久久精品久久国产性色也91| 精品国产区一区二区三区在线观看| 黑人极品videos精品欧美裸| 欧美午夜片在线免费观看| 北条麻妃一区二区在线观看| 日韩在线精品视频| 国产网站欧美日韩免费精品在线观看| 国产精品羞羞答答| 色伦专区97中文字幕| 中文字幕视频在线免费欧美日韩综合在线看| 国产精品夜色7777狼人| 欧美日韩性生活视频| 国产精品亚洲第一区| 亚洲一区二区在线| 欧美激情网站在线观看| 欧美中文字幕在线观看| 日韩欧美中文字幕在线观看| 91精品国产精品| 黑人巨大精品欧美一区二区一视频| 国产美女91呻吟求| 亚洲成人激情在线观看| 中文字幕日韩欧美在线| 欧洲亚洲免费在线| 亚洲男人第一av网站| 亚洲一区二区久久久| 国产日韩精品一区二区| 国产精品露脸av在线| 亚洲第一福利在线观看| 亚洲精品日韩久久久| 91精品在线播放| 国产日本欧美视频| 国产精品免费久久久久影院| 日韩在线观看网址| 亚洲成人黄色在线观看| 色综合色综合网色综合| 福利微拍一区二区| 日本乱人伦a精品| 亚洲高清一二三区| 亚洲第一男人天堂| 国产一区二区色| 91在线观看免费高清完整版在线观看| 国a精品视频大全| 亚洲女同性videos| 亚洲bt欧美bt日本bt| 亚洲视屏在线播放| 91成人免费观看网站| 亚洲美女av黄| 91人人爽人人爽人人精88v| 亚洲激情视频在线| 欧美精品videos| 精品久久久一区二区| 亚洲激情久久久| 一个人看的www久久| 日韩av在线影院| 中文字幕不卡在线视频极品| 亚洲欧美999| 国产精品亚洲欧美导航| 97色在线视频| 国产精品成人观看视频国产奇米| 久久久久久网站| 国产美女久久久| 欧美性猛交xxx| 日韩av中文字幕在线播放| 日韩av免费网站| 美女扒开尿口让男人操亚洲视频网站| 日韩日本欧美亚洲| 97人人模人人爽人人喊中文字| 日韩激情在线视频| 日韩精品中文字幕有码专区| 久久久久久久激情视频| 国产丝袜一区视频在线观看| 中文字幕国产精品| 亚洲天堂av高清| 色悠悠久久88| 亚洲一区第一页| 亚洲欧美在线看| 最近免费中文字幕视频2019| 欧美久久精品午夜青青大伊人| 成人a视频在线观看| 91美女高潮出水| 在线视频欧美日韩精品| 亚洲欧美国产va在线影院| 亚洲人成电影网站色xx| 97热精品视频官网| 精品一区二区三区三区| 国产丝袜一区视频在线观看| 日韩在线不卡视频| 欧美野外猛男的大粗鳮| 久久精视频免费在线久久完整在线看| 北条麻妃一区二区在线观看| 91chinesevideo永久地址| 亚洲第一免费播放区| 欧美成年人网站| 欧美性做爰毛片| 色综合天天狠天天透天天伊人| 国a精品视频大全| 亚洲最大福利网站| 成人黄色av免费在线观看| 中文字幕视频一区二区在线有码| 欧美裸体视频网站| 久久人人爽人人| 8090成年在线看片午夜| 91香蕉嫩草影院入口| 亚洲欧美一区二区精品久久久| 日韩中文字幕在线播放| 国产精品av免费在线观看| 国产精品老女人视频|