一区二区三区日韩精品-日韩经典一区二区三区-五月激情综合丁香婷婷-欧美精品中文字幕专区

分享

LRESULT CALLBACK WndProc (HWND, UINT, WPARAM,...

 知_ 2012-08-23
Windows程序是事件驅(qū)動的,對于一個窗口,它的大部分例行維護是由系統(tǒng)維護的。沒個窗口都有一個消息處理函數(shù)。在消息處理函數(shù)中,對傳入的消息進行處理。系統(tǒng)內(nèi)還有它自己的缺省消息處理函數(shù)。

        客戶寫一個消息處理函數(shù),在窗口建立前,將消息處理函數(shù)與窗口關(guān)聯(lián)。這樣,每當(dāng)有消息產(chǎn)生時,就會去調(diào)用這個消息處理函數(shù)。通常情況下,客戶都不會處理全部的消息,而是只處理自己感興趣的消息,其他的,則送回到系統(tǒng)的缺省消息處理函數(shù)中去。


系統(tǒng)會將針對這個程序的消息依次放到程序的“消息隊列”中,由程序自己依次取出消息,在分發(fā)到對應(yīng)的窗口中去。
因此,建立窗口后,將進入一個循環(huán)。
在循環(huán)中,取出消息、派發(fā)消息,循環(huán)往復(fù),直到取得的消息是退出消息。
循環(huán)退出后,程序即結(jié)束。   #include   "stdafx.h "
#include   <windows.h>

//一、消息處理函數(shù)
//參數(shù):窗口句柄,消息,消息參數(shù),消息參數(shù)
LRESULT   CALLBACK   WndProc(HWND   hwnd,   UINT   message,   WPARAM   wParam,   LPARAM   lParam)
{
//處理感興趣的消息
switch   (message)
{
case   WM_DESTROY:
//當(dāng)用戶關(guān)閉窗口,窗口銷毀,程序需結(jié)束,發(fā)退出消息,以退出消息循環(huán)
PostQuitMessage   (0)   ;
return   0   ;
}
//其他消息交給由系統(tǒng)提供的缺省處理函數(shù)
return   ::DefWindowProc   (hwnd,   message,   wParam,   lParam)   ;
}

//二、應(yīng)用程序主函數(shù)
//參數(shù):實例句柄、前一個實例的句柄、命令行參數(shù)、窗口顯示方式
int   WINAPI   WinMain   (HINSTANCE   hInstance,   HINSTANCE   hPrevInstance,
                                        PSTR   szCmdLine,   int   iCmdShow)
{
//1.注冊窗口類
static   TCHAR   szAppName[]   =   TEXT   ( "HelloWin ")   ; //窗口類名稱
//定制 "窗口類 "結(jié)構(gòu)
WNDCLASS           wndclass   ;
wndclass.style                   =   CS_HREDRAW   |   CS_VREDRAW   ;
wndclass.lpfnWndProc       =   WndProc   ; //關(guān)聯(lián)消息處理函數(shù)    
wndclass.cbClsExtra         =   0   ;
wndclass.cbWndExtra         =   0   ;
wndclass.hInstance           =   hInstance   ; //實例句柄
wndclass.hIcon                   =   LoadIcon   (NULL,   IDI_APPLICATION)   ; //圖標(biāo)
wndclass.hCursor               =   LoadCursor   (NULL,   IDC_ARROW)   ; //光標(biāo)
wndclass.hbrBackground   =   (HBRUSH)   GetStockObject   (WHITE_BRUSH); //畫刷
wndclass.lpszMenuName     =   NULL   ;
wndclass.lpszClassName   =   szAppName; //類名稱
//注冊
if   (!RegisterClass   (&wndclass))
{
MessageBox   (NULL,   TEXT   ( "RegisterClass   Fail! "),  
szAppName,   MB_ICONERROR)   ;
return   0   ;
}

//建立窗口
HWND   hwnd   ;
hwnd   =   CreateWindow   (szAppName, //窗口類名稱
TEXT   ( "The   Hello   Program "), //窗口標(biāo)題  
WS_OVERLAPPEDWINDOW, //窗口風(fēng)格
CW_USEDEFAULT,
CW_USEDEFAULT,
CW_USEDEFAULT,
CW_USEDEFAULT,
NULL,
NULL,
hInstance, //實例句柄
NULL);

ShowWindow   (hwnd,   iCmdShow)   ;
UpdateWindow   (hwnd)   ;

//消息循環(huán)
MSG                     msg   ;
while   (GetMessage   (&msg,   NULL,   0,   0)) //從消息隊列中取消息  
{
TranslateMessage   (&msg)   ; //轉(zhuǎn)換消息
DispatchMessage   (&msg)   ; //派發(fā)消息
}
return   msg.wParam   ;
}

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多

    粉嫩内射av一区二区| 国内九一激情白浆发布| 亚洲在线观看福利视频| 久久本道综合色狠狠五月| 一区二区三区日韩在线| 国产精品免费视频视频| 亚洲午夜av久久久精品| 尹人大香蕉中文在线播放| 国产精品99一区二区三区| 国产午夜福利片在线观看| 美国黑人一级黄色大片| 蜜桃传媒视频麻豆第一区| 亚洲第一区欧美日韩在线| 激情五月综五月综合网| 97人妻精品免费一区二区| 91久久国产福利自产拍| 爱在午夜降临前在线观看| 毛片在线观看免费日韩| 欧美人妻盗摄日韩偷拍| 国产三级视频不卡在线观看| 精品欧美一区二区三久久| 欧美午夜国产在线观看| 久久成人国产欧美精品一区二区| 狠狠干狠狠操在线播放| 91蜜臀精品一区二区三区| 国产精品一区二区有码| 久久精品伊人一区二区| 少妇福利视频一区二区| 亚洲精品中文字幕一二三| 好吊视频一区二区在线| 日韩中文字幕欧美亚洲| 亚洲免费观看一区二区三区| 色哟哟国产精品免费视频| 中文字幕一区二区免费| 国产精品香蕉一级免费| 日本人妻熟女一区二区三区| 九九热精彩视频在线免费| 国产又粗又猛又爽又黄的文字| 中文字幕91在线观看| 国产午夜精品在线免费看| 欧美日韩精品久久第一页 |