ÓÑÇéÌáʾ£ºÈç¹û±¾ÍøÒ³´ò¿ªÌ«Âý»òÏÔʾ²»ÍêÕû£¬Çë³¢ÊÔÊó±êÓÒ¼ü¡°Ë¢Ð¡±±¾ÍøÒ³£¡ÔĶÁ¹ý³Ì·¢ÏÖÈκδíÎóÇë¸æËßÎÒÃÇ£¬Ð»Ð»£¡£¡ ±¨¸æ´íÎó
ϲÊéÍø ·µ»Ø±¾ÊéĿ¼ ÎÒµÄÊé¼Ü ÎÒµÄÊéÇ© TXTÈ«±¾ÏÂÔØ ½øÈëÊé°É ¼ÓÈëÊéÇ©

CÓïÑÔʵÀý½Ì³Ì(PDF¸ñʽ)-µÚ21ÕÂ

°´¼üÅÌÉÏ·½Ïò¼ü ¡û »ò ¡ú ¿É¿ìËÙÉÏÏ·­Ò³£¬°´¼üÅÌÉ쵀 Enter ¼ü¿É»Øµ½±¾ÊéĿ¼ҳ£¬°´¼üÅÌÉÏ·½Ïò¼ü ¡ü ¿É»Øµ½±¾Ò³¶¥²¿£¡
¡ª¡ª¡ª¡ªÎ´ÔĶÁÍꣿ¼ÓÈëÊéÇ©ÒѱãÏ´μÌÐøÔĶÁ£¡




APIENTRYµÈ¡£ËüÃǶԱàÒëÆ÷¶øÑÔ¶¼ÊÇÒ»»ØÊ£¬×îÖÕ½«±»½âÊÍΪ¡¡

__stdcall¡£ÔÚWindows»·¾³Ï±à³Ì£¬»áÓöµ½ºÜ¶àÕâÑùµÄÇé¿ö£¬×¢Òâ²»¡¡

Òª»ìÏýËüÃÇ¡£¡¡¡¡



Ò»°ãÇé¿öÏ£¬ÎÒÃÇÓ¦¸ÃÔÚWinMainº¯ÊýÖÐÍê³ÉÏÂÃæµÄ²Ù×÷£º¡¡¡¡



1¡£¡¡×¢²á´°¿ÚÀࣻ¡¡¡¡



2¡£¡¡´´½¨Ó¦ÓóÌÐòÖ÷´°¿Ú£»¡¡¡¡


¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­Page¡¡129¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­

3¡£¡¡½øÈëÓ¦ÓóÌÐòÏûϢѭ»·¡£¡¡¡¡



½ÓÏÂÀ´ÎÒÃǽ«ÒÀ´ÎÌÖÂÛÕâЩÄÚÈÝ¡£¡¡¡¡



ÔÚWindowsÓ¦ÓóÌÐòÖУ¬Ã¿Ò»¸ö´°¿Ú¶¼±ØÐë´ÓÊôÓÚÒ»¸ö´°¿ÚÀ࣬´°¿Ú¡¡

ÀඨÒåÁË´°¿ÚËù¾ßÓеÄÊôÐÔ£¬ÈçËüµÄÑùʽ¡¢Í¼±ê¡¢Êó±êÖ¸Õë¡¢²Ëµ¥Ãû¡¡

³Æ¼°´°¿Ú¹ý³ÌÃûµÈ¡£ÔÚ×¢²á´°¿ÚÀàÇ°£¬ÎÒÃÇÏÈ´´½¨Ò»¸öÀàÐÍΪ¡¡

WNDCLASSµÄ½á¹¹£¬È»ºóÔڸýṹ¶ÔÏóÖÐÌîÈë´°¿ÚÀàµÄÐÅÏ¢£¬×îºó½«Ëü¡¡

´«µÝ¸øº¯ÊýRegisterClass£¬Õû¸ö¹ý³ÌÈçÏÂÃæµÄ´úÂëËùʾ£º¡¡¡¡



WNDCLASS¡¡wc£»¡¡¡¡



//¡¡Ìî³ä´°¿ÚÀàÐÅÏ¢¡¡¡¡



wc¡£style=CS_HREDRAW£üCS_VREDRAW£»¡¡¡¡



wc¡£lpfnWndProc=WndProc£»¡¡¡¡



wc¡£cbClsExtra=0£»¡¡¡¡



wc¡£cbWndExtra=0£»¡¡¡¡



wc¡£hInstance=hInstance£»¡¡¡¡



wc¡£hIcon=LoadIcon£¨NULL£»IDI_APPLICATION£©£»¡¡¡¡



wc¡£hCursor=LoadCursor£¨NULL£»IDC_ARROW£©£»¡¡¡¡



wc¡£hbrBackground=GetStockObject£¨WHITE_BRUSH£©£»¡¡¡¡



wc¡£lpszMenuName=NULL£»¡¡¡¡



wc¡£lpszClassName=¡¨SdkDemo1¡¨£»¡¡¡¡



//¡¡×¢²á´°¿ÚÀà¡¡¡¡



RegisterClass£¨&wc£©£»¡¡¡¡



ÏÂÃæ½âÊÍһϽṹWNDCLASS¡¡Öи÷³ÉÔ±µÄº¬Ò壺¡¡¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡style£º¡¡¡¡Ö¸¶¨´°¿ÚÑùʽ¡£¸ÃÑùʽ¿ÉÒÔΪһϵÁÐÆÁ¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡±ÎλµÄ°´Î»»ò£¬ÔÚÇ°ÃæµÄÀý×ÓÖУ¬CS_HREDRAW±í¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Ê¾µ±´°¿ÚÓû§Çø¿í¶È¸Ä±äʱÖØ»æÕû¸ö´°¿Ú£¬¶ø¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡CS_VREDRAWÔò±íÔò±íʾµ±´°¿ÚÓû§Çø¸ß¶È¸Ä±äʱ¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ÖØ»æÕû¸ö´°¿Ú¡£¶ÔÓÚÆäËüµÄ´°¿ÚÑùʽ£¬Çë²ÎÔÄ¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡SDKÖйØÓÚWNDCLASSµÄÁª»úÎĵµ¡££¨Ë³±ã˵һ¾ä£¬¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Çë×¢Òâ¸Ã³ÉÔ±µÄ´óСд£¬ËüÊÇСдµÄstyle£¬¶ø¡¡


¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­Page¡¡130¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­

²»ÊÇStyle¡££©¡¡¡¡



lpfnWndProc£º¡¡¡¡Ö¸Ïò´°¿Ú¹ý³ÌµÄÖ¸Õë¡£¹ØÓÚ´°¿Ú¡¡

¹ý³ÌÎÒÃǽ«ÒÔºóÃæµÄÄÚÈÝÖн²Êö¡£ÔÚÇ°ÃæµÄÀý×Ó¡¡

ÖУ¬ÎÒÃÇʹÓÃÃûΪWndProcµÄ´°¿Ú¹ý³Ì¡£¡¡¡¡



cbClsExtra£º¡¡Ö¸¶¨ÔÚ´°¿ÚÀà½á¹¹Ö®ºó·ÖÅäµÄ¸½¼Ó¡¡

×Ö½ÚÊý¡£²Ù×÷ϵͳ½«ÕâЩ×Ö½Ú³õʼ»¯Îª0¡£¡¡¡¡



cbWndExtra£º¡¡Ö¸¶¨ÔÚ´°¿ÚʵÀýÖ®ºó·ÖÅäµÄ¸½¼Ó×Ö¡¡

½ÚÊý¡£²Ù×÷ϵͳ½«ÕâЩ×Ö½Ú³õʼ»¯Îª0¡£Èç¹ûÓ¦¡¡

ÓóÌÐòʹÓÃWNDCLASS½á¹¹×¢²áÒ»¸öʹÓÃ×ÊÔ´Îļþ¡¡

ÖеÄCLASSÖ¸Áî´´½¨µÄ¶Ô»°¿ò£¬ÄÇôcbWndExtra¡¡

±ØÐë±»ÉèÖÃΪDLGWINDOWEXTRA¡£¡¡¡¡



hInstance¡¡£º¡¡±êʶ¸ÃÀàµÄ´°¿Ú¹ý³ÌËùÊôµÄʵÀý¡£¡¡¡¡



hIcon¡¡£º¡¡±êʶÀàͼ±ê¡£¸Ã³ÉÔ±±ØÐëΪһ¸öͼ±ê×Ê¡¡

Ô´µÄ¾ä±ú¡£Èç¹û¸Ã³ÉԱΪNULL£¬ÔòÓ¦ÓóÌÐò±ØÐë¡¡

ÔÚÓû§×îС»¯Ó¦ÓóÌÐò´°¿Úʱ»æÖÆͼ±ê¡£¡¡¡¡



hCursor¡¡£º¡¡±êʶÀàÊó±êÖ¸Õë¡£¸Ã³ÉÔ±±ØÐëΪһ¸ö¡¡

¹â±ê×ÊÔ´µÄ¾ä±ú£¬Èç¹û¸Ã³ÉԱΪNULL£¬µ±Êó±êÒÆ¡¡

½øÓ¦ÓóÌÐò´°¿ÚʱӦÓóÌÐò±ØÐëÏÔʽָ¶¨Ö¸ÕëÐΡ¡

×´¡£¡¡¡¡



hbrBackground£º¡¡¡¡±êʶÀà±³¾°Ë¢×Ó¡£¸Ã³ÉÔ±¿ÉÒÔ¡¡

Ϊһ¸öÓÃÀ´»æÖƱ³¾°µÄ»­Ë¢¾ä±ú£¬»òÕßΪ±ê׼ϵ¡¡

ͳÑÕÉ«ÖµÖ®Ò»¡£¡¡¡¡¡¡



lpszMenuName£º¡¡Ö¸ÏòÒ»‚€ÒÔNULL½áβµÄ×Ö·û´®µÄ¡¡

Ö¸Õ룬¸Ã×Ö·û´®Ö¸¶¨ÁËÀà²Ëµ¥µÄ×ÊÔ´Ãû³Æ¡£Èç¹û¡¡

ÔÚ×ÊÔ´Ãû³ÆΪµÄ²Ëµ¥ÎªÒ»¸öÕûÊýËù±êʶ£¬Ôò¿ÉÒÔ¡¡

ʹÓÃMAKEINTRESOURCEºê½«Æäת»»ÎªÒ»¸ö×Ö·û¡¡

´®£»Èç¹û¸Ã³ÉԱΪNULL£¬ÔòÊôÓÚ¸ÃÀàµÄ´°¿ÚÎÞĬ¡¡

Èϲ˵¥¡£¡¡¡¡



lpszClassName£º¡¡¡¡Ö¸ÏòÒ»¸öÒÔNULL½áβµÄ×Ö·û´®¡¡

»òΪһ¸öÔ­×Ó¡£Èç¹û¸Ã²ÎÊýΪһ¸öÔ­×Ó£¬ÄÇôËü¡¡

±ØÐëÊÇÒ»¸öʹÓÃGlobalAddAtomº¯Êý´´½¨µÄÈ«¾Ö¡¡

Ô­×Ó£»Èç¹ûΪһ¸ö×Ö·û´®£¬¸Ã×Ö·ûÆ÷½«³ÉÔ±´°¿Ú¡¡

ÀàÃû¡£¡¡¡¡


¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­Page¡¡131¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­

¡¡¡¡¡¡l¡¡×¢Ò⣺¡¡¡¡



¡¡¡¡¡¡l¡¡ÕâÀï¶à´ÎÌáµ½´°¿ÚÀàÕâÒ»Ãû´Ê£¬µ«ÊÇËüºÍÇ°Ã泣˵µÄC£«£«ÀàûÓÐÈΡ¡

¡¡¡¡¡¡¡¡ºÎÁª¡¡Ïµ¡£´°¿ÚÀàÖ»±íʾÁË´°¿ÚµÄÀàÐÍ£¬ËüÍêÈ«²»ÊÇÃæÏò¶ÔÏóÒâÒå¡¡

¡¡¡¡¡¡¡¡ÉϵÄÀ࣬ÒòΪËü²»Ö§³ÖÃæÏò¶ÔÏó¼¼ÊõÖеļ̳м°¶à̬µÈ¡£¡¡¡¡



ÔÚʹÓÃRegisterClass×¢²á´°¿ÚÀà³É¹¦Ö®ºó£¬¼´¿ÉÒÔʹÓøô°¿ÚÀà´´¡¡

½¨²¢ÏÔʾӦÓóÌÐòµÄ´°¿Ú¡£Õâ¸ö¹ý³ÌÈçÏÂÃæµÄ´úÂëËùʾ£º¡¡¡¡



//¡¡´´½¨Ó¦ÓóÌÐòÖ÷´°¿Ú¡¡¡¡



hWnd=CreateWindow¡¡£¨¡¨SdkDemo1¡¨£»¡¡//¡¡´°¿ÚÀàÃû¡¡¡¡



¡¨µÚÒ»¸öWin32¡¡SDKÓ¦ÓóÌÐò¡¨£»¡¡//¡¡´°¿Ú±êÌâ¡¡¡¡



WS_OVERLAPPEDWINDOW£»¡¡//¡¡´°¿ÚÑùʽ¡¡¡¡



CW_USEDEFAULT£»¡¡//¡¡³õʼ»¯¡¡x¡¡×ø±ê¡¡¡¡



CW_USEDEFAULT£»¡¡//¡¡³õʼ»¯¡¡y¡¡×ø±ê¡¡¡¡



CW_USEDEFAULT£»¡¡//¡¡³õʼ»¯´°¿Ú¿í¶È¡¡¡¡



CW_USEDEFAULT£»¡¡//¡¡³õʼ»¯´°¿Ú¸ß¶È¡¡¡¡



NULL£»¡¡//¡¡¸¸´°¿Ú¾ä±ú¡¡¡¡



NULL£»¡¡//¡¡´°¿Ú²Ëµ¥¾ä±ú¡¡¡¡



hInstance£»¡¡//¡¡³ÌÐòʵÀý¾ä±ú¡¡¡¡



NULL£©£»¡¡//¡¡´´½¨²ÎÊý¡¡¡¡



//¡¡ÏÔʾ´°¿Ú¡¡¡¡



ShowWindow£¨hWnd£»SW_SHOW£©£»¡¡¡¡



//¡¡¸üÐÂÖ÷´°¿Ú¿Í»§Çø¡¡¡¡



UpdateWindow£¨hWnd£©£»¡¡¡¡



ÓÉÓÚÉÏÊö´úÂë¾ù¼ÓÉÏÁËÏ꾡µÄ×¢ÊÍ£¬ÕâÀï½ö×÷һЩ¼òµ¥µÄ˵Ã÷ºÍÇ¿¡¡

µ÷¡£CreateWindowº¯ÊýµÄÔ­ÐÍÊÇÕâÑùµÄ£º¡¡¡¡



HWND¡¡CreateWindow£¨LPCTSTR¡¡lpClassName£»¡¡//¡¡Ö¸ÏòÒÑ×¢²áµÄÀàÃû¡¡¡¡



LPCTSTR¡¡lpWindowName£»¡¡//¡¡Ö¸Ïò´°¿ÚÃû³Æ¡¡¡¡



DWORD¡¡dwStyle£»¡¡//¡¡´°¿ÚÑùʽ¡¡¡¡


¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­Page¡¡132¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­

int¡¡x£»¡¡//¡¡´°¿ÚµÄˮƽλÖá¡¡¡



int¡¡y£»¡¡//¡¡´°¿ÚµÄ´¹Ö±Î»Öá¡¡¡



int¡¡nWidth£»¡¡//¡¡´°¿Ú¿í¶È¡¡¡¡



int¡¡nHeight£»¡¡//¡¡´°¿Ú¸ß¶È¡¡¡¡



HWND¡¡hWndParent£»¡¡//¡¡¸¸´°¿Ú»òËùÓÐÕß´°¿Ú¾ä±ú¡¡¡¡



HMENU¡¡hMenu£»¡¡//¡¡²Ëµ¥¾ä±ú»ò×Ó´°¿Ú±êʶ·û¡¡¡¡



HANDLE¡¡hInstance£»¡¡//¡¡Ó¦ÓóÌÐòʵÀý¾ä±ú¡¡¡¡



LPVOID¡¡lpParam£»¡¡//¡¡Ö¸Ïò´°¿Ú´´½¨Êý¾ÝµÄÖ¸Õë¡¡¡¡



£©£»¡¡¡¡



ÔÚÇ°ÃæµÄʾÀýÖУ¬ÎÒÃǶÔx¡¢y¡¢nWidthºÍnHeight²ÎÊý¶¼´«µÝÁËͬһ¡¡

¸öÖµCW_USEDEFAULT£¬±íʾʹÓÃϵͳĬÈϵĴ°¿ÚλÖúʹóС£¬¸Ã³£Á¿¡¡

½ö¶ÔÓÚÖصþʽ´°¿Ú¡¡£¨¼´ÔÚdwStypeÑùʽÖÐÖ¸¶¨ÁË¡¡

WS_OVERLAPPEDWINDOW£¬ÁíÒ»¸ö³£Á¿WS_TILEDWINDOWÓÐ×ÅÏàͬµÄÖµ£©ÓС¡

Ч¡£¶ÔÓÚCreateWindowsº¯ÊýµÄÆäËüÄÚÈÝ£¬±ÈÈç¹ØÓÚdwStyle²ÎÊýËùÓá¡

³£Á¿µÄÏêϸ²Î¿¼Çë¡¡×ÔÐвÎÔÄWin32¡¡SDKÖеÄÎĵµ¡£¡¡¡¡



¡¡¡¡l¡¡×¢Ò⣺¡¡¡¡



¡¡¡¡l¡¡¾¡¹ÜWindows¡¡95ÊÇÒ»¸ö32λµÄ²Ù×÷ϵͳ£¬µ«ÊÇ£¬ÆäÖÐÒ²±£ÁôÁ˺ܡ¡

¡¡¡¡¡¡¡¡¶à16λµÄÌØÕ÷£¬±ÈÈç˵£¬ÔÚWindows¡¡95»·¾³Ï£¬ÏµÍ³×î¶àÖ»¿ÉÒÔ¡¡

¡¡¡¡¡¡ÓÐ16384¸ö´°¿Ú¾ä±ú¡£¶øÔÚWindows¡¡NTÏÂÔòÎÞ´ËÏÞ¡£È»¶ø£¬ÊÂʵ¡¡

¡¡¡¡¡¡ÉÏ£¬¶ÔÓÚÒ»°ãµÄ×ÀÃæ¸öÈË»úϵͳÀ´Ëµ£¬ÎÒÃǼ¸ºõ²»¿ÉÄܳ¬¹ýÕâ¸ö¡¡

¡¡¡¡¡¡¡¡ÏÞÖÆ¡£¡¡¡¡



´´½¨´°¿ÚÍê³ÉÖ®ºó£¬ShowWindowsÏÔʾ¸Ã´°¿Ú£¬µÚ¶þ¸ö²ÎÊýSW_SHOW±í¡¡

ʾÔÚµ±Ç°Î»ÖÃÒÔµ±Ç°´óС¼¤»î²¢ÏÔʾÓɵÚÒ»¸ö²ÎÊý±êʶµÄ´°¿Ú¡£È»¡¡

ºó£¬º¯ÊýUpdateWindowsÏò´°¿Ú·¢ËÍÒ»ÌõWM_PAINTÏûÏ¢£¬ÒÔ֪ͨ´°¿Ú¡¡

¸üÐÂÆä¿Í»§Çø¡£ÐèҪעÒâµÄÊÇ£¬ÓÉUpdateWindows·¢Ë͵ÄWM_PAINTÏû¡¡

Ï¢½«Ö±½Ó·¢Ë͵½´°¿Ú¹ý³Ì¡¡£¨ÔÚÉÏÃæµÄÀý×ÓÖÐÊÇWndProcº¯Êý£©£¬¶ø²»ÊÇ¡¡

·¢Ë͵½½ø³ÌµÄÏûÏ¢¶ÓÁУ¬Òò´Ë£¬¾¡¹ÜÕâʱӦÓóÌÐòµÄÖ÷ÏûϢѭ»·ÉÐδ¡¡

Æô¶¯£¬µ«ÊÇ´°¿Ú¹ý³ÌÈԿɽÓÊÕµ½¸ÃWM_PAINTÏûÏ¢²¢¸üÐÂÆäÓû§Çø¡£¡¡¡¡



ÔÚÍê³ÉÉÏÃæµÄ²½ÖèÖ®ºó£¬½øÈëÓ¦ÓóÌÐòµÄÖ÷ÏûϢѭ»·¡£Ò»°ãÇé¿öÏ£¬¡¡

Ö÷ÏûϢѭ»·¾ßÓÐÏÂÃæµÄ¸ñʽ£º¡¡¡¡



while¡¡£¨GetMessage£¨&msg£»NULL£»0£»0£©£©¡¡¡¡


¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­Page¡¡133¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­

£û¡¡¡¡



TranslateMessage£¨&msg£©£»¡¡¡¡



DispatchMessage£¨&msg£©£»¡¡¡¡



£ý¡¡¡¡



Ö÷ÏûϢѭ»·ÓɶÔÈý¸öAPIº¯ÊýµÄµ÷ÓúÍÒ»¸öwhile½á¹¹×é³É¡£ÆäÖС¡

GetMessage´Óµ÷ÓÃÏ̵߳ÄÏûÏ¢¶ÓÁÐÖлñÈ¡ÏûÏ¢£¬²¢½«ÏûÏ¢·Åµ½ÓɵÚÒ»¡¡

¸ö²ÎÊýÖ¸¶¨µÄÏûÏ¢½á¹¹ÖС£Èç¹ûÖ¸¶¨Á˵ڶþ¸ö²ÎÊý£¬ÔòGetMessage»ñ¡¡

È¡ÊôÓڸòÎÊýÖ¸¶¨µÄ´°¿Ú¾ä±úËù±êʶµÄ´°¿ÚµÄÏûÏ¢£¬Èç¹û¸Ã²ÎÊýΪ¡¡

NULL£¬ÔòGetMessage»ñÈ¡ÊôÓÚµ÷ÓÃÏ̼߳°ÊôÓÚ¸ÃÏ̵߳ÄËùÓд°¿ÚµÄÏû¡¡

Ï¢¡£×îºóÁ½¸ö²ÎÊýÖ¸¶¨ÁËGetMessageËù»ñÈ¡ÏûÏ¢µÄ·¶Î§£¬Èç¹ûÁ½¸ö²Î¡¡

Êý¾ùΪ0£¬ÔòGetMessage¼ìË÷²¢»ñÈ¡ËùÓпÉÒԵõ½µÄÏûÏ¢¡£¡¡¡¡



ÔÚÉÏÃæµÄ´úÂëÖУ¬±äÁ¿msgÊÇÒ»¸öÀàÐÍΪMSGµÄ½á¹¹¶ÔÏ󣬸ýṹÌåµÄ¡¡

¶¨ÒåÈçÏ£º¡¡¡¡



typedef¡¡struct¡¡tagMSG¡¡£û¡¡//¡¡msg¡¡¡¡



HWND¡¡hwnd£»¡¡¡¡



UINT¡¡message£»¡¡¡¡



WPARAM¡¡wParam£»¡¡¡¡



LPARAM¡¡lParam£»¡¡¡¡



DWORD¡¡time£»¡¡¡¡



POINT¡¡pt£»¡¡£ý¡¡MSG£»¡¡¡¡



ÏÂÃæ½âÊ͸÷³ÉÔ±µÄº¬Ò壺¡¡¡¡



hwnd£º¡¡±êʶ»ñµÃ¸ÃÏûÏ¢µÄ´°¿Ú½ø³ÌµÄ´°¿Ú¾ä±ú¡£¡¡¡¡



message£º¡¡Ö¸¶¨ÏûÏ¢Öµ¡£¡¡¡¡



wParam£º¡¡Æ京ÒåÌض¨ÓÚ¾ßÌåµÄÏûÏ¢ÀàÐÍ¡£¡¡¡¡



lParam£º¡¡Æ京ÒåÌض¨ÓÚ¾ßÌåµÄÏûÏ¢ÀàÐÍ¡£¡¡¡¡



time£º¡¡Ö¸¶¨ÏûÏ¢·¢ËÍʱµÄʱ¼ä¡£¡¡¡¡



pt£º¡¡ÒÔÆÁÄ»×ø±ê±íʾµÄÏûÏ¢·¢ËÍʱµÄÊó±êÖ¸ÕëµÄλÖᣡ¡¡¡


¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­Page¡¡134¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­

ÔÚwhileÑ­»·ÌåÖеÄTranslateMessageº¯Êý½«ÐéÄâ°´¼üÏûÏ¢·­ÒëΪ×Ö¡¡

·ûÏûÏ¢£¬È»ºó½«ÏûÏ¢·¢Ë͵½µ÷ÓÃÏ̵߳ÄÏûÏ¢¶ÓÁУ¬ÔÚÏÂÒ»´Îµ÷Óá¡

GetMessageº¯Êý»òPeekMessageº¯Êýʱ£¬¸Ã×Ö·ûÏûÏ¢½«±»»ñÈ¡¡£¡¡

TranslateMessageº¯Êý½«WM_KEYDOWNºÍWM_KEYUPÐéÄâ°´¼ü×éºÏ·­ÒëΪ¡¡

WM_CHARºÍWM_DEADCHAR£¬½«WM_SYSKEYDOWNºÍWM_SYSKEYUPÐéÄâ°´¼ü×é¡¡

ºÏ·­ÒëΪWM_SYSCHARºÍWM_SYSREADCHAR¡£ÐèҪעÒâµÄÒ»µãÊÇ£¬½öµ±Ïà¡¡

Ó¦µÄÐéÄâ°´¼ü×éºÏÄܹ»±»·­ÒëΪËù¶ÔÓ¦µÄASCII×Ö·ûʱ£¬¡¡

TranslateMessage²Å·¢ËÍÏàÓ¦µÄWM_CHARÏûÏ¢¡£¡¡¡¡



Èç¹ûÒ»¸ö×Ö·ûÏûÏ¢±»·¢Ë͵½µ÷ÓÃÏ̵߳ÄÏûÏ¢¶ÓÁУ¬Ôò¡¡

TranlateMessage·µ»Ø·ÇÁãÖµ£¬·ñÔò·µ»ØÁãÖµ¡£¡¡¡¡



¡¡¡¡l¡¡×¢Ò⣺¡¡¡¡



¡¡¡¡l¡¡ÓëÔÚWindows¡¡95²Ù×÷ϵͳϲ»Í¬£¬ÔÚWindows¡¡NTÏ£¬¡¡

¡¡¡¡¡¡TranslateMessage¶ÔÓÚ¹¦ÄܼüºÍ¹â±ê¼ýÍ·¼üÒ²·µ»ØÒ»¸ö·ÇÁãÖµ¡£¡¡¡¡



È»ºó£¬º¯ÊýDispatchMessage½«ÊôÓÚijһ´°¿ÚµÄÏûÏ¢·¢Ë͸ô°¿ÚµÄ´°¡¡

¿Ú¹ý³Ì¡£Õâ¸ö´°¿ÚÓÉMSG½á¹¹ÖеÄhwnd³ÉÔ±Ëù±êʶµÄ¡£º¯ÊýµÄ·µ»ØÖµ¡¡

Ϊ´°¿Ú¹ý³ÌµÄ·µ»ØÖµ£¬µ«ÊÇ£¬ÎÒÃÇÒ»°ã²»Ê¹ÓÃÕâ¸ö·µ»ØÖµ¡£ÕâÀïҪע¡¡

ÒâµÄÊÇ£¬²¢²»Ò»¶¨ÊÇËùÓÐÊôÓÚijһ¸ö´°¿ÚµÄÏûÏ¢¶¼·¢Ë͸ø´°¿ÚµÄ´°¿Ú¡¡

¹ý³Ì£¬±ÈÈç¶ÔÓÚWM_TIMERÏûÏ¢£¬Èç¹ûÆälParam²ÎÊ
·µ»ØĿ¼ ÉÏÒ»Ò³ ÏÂÒ»Ò³ »Øµ½¶¥²¿ ÔÞ£¨0£© ²È£¨0£©
δÔĶÁÍꣿ¼ÓÈëÊéÇ©ÒѱãÏ´μÌÐøÔĶÁ£¡
ÎÂÜ°Ìáʾ£º ο´Ð¡ËµµÄͬʱ·¢±íÆÀÂÛ£¬Ëµ³ö×Ô¼ºµÄ¿´·¨ºÍÆäËüС»ï°éÃÇ·ÖÏíÒ²²»´íŶ£¡·¢±íÊéÆÀ»¹¿ÉÒÔ»ñµÃ»ý·ÖºÍ¾­Ñé½±Àø£¬ÈÏÕæдԭ´´ÊéÆÀ ±»²ÉÄÉΪ¾«ÆÀ¿ÉÒÔ»ñµÃ´óÁ¿½ð±Ò¡¢»ý·ÖºÍ¾­Ñé½±ÀøŶ£¡