ÓÑÇéÌáʾ£ºÈç¹û±¾ÍøÒ³´ò¿ªÌ«Âý»òÏÔʾ²»ÍêÕû£¬Çë³¢ÊÔÊó±êÓÒ¼ü¡°Ë¢Ð¡±±¾ÍøÒ³£¡
µÚÈýµç×ÓÊé ·µ»Ø±¾ÊéĿ¼ ¼ÓÈëÊéÇ© ÎÒµÄÊé¼Ü ÎÒµÄÊéÇ© TXTÈ«±¾ÏÂÔØ ¡ºÊղص½ÎÒµÄä¯ÀÀÆ÷¡»

CÓïÑÔʵÀý½Ì³Ì(PDF¸ñʽ)-µÚ21²¿·Ö

¿ì½Ý²Ù×÷: °´¼üÅÌÉÏ·½Ïò¼ü ¡û »ò ¡ú ¿É¿ìËÙÉÏÏ·­Ò³ °´¼üÅÌÉ쵀 Enter ¼ü¿É»Øµ½±¾ÊéĿ¼ҳ °´¼üÅÌÉÏ·½Ïò¼ü ¡ü ¿É»Øµ½±¾Ò³¶¥²¿! Èç¹û±¾ÊéûÓÐÔĶÁÍ꣬ÏëÏ´μÌÐø½Ó×ÅÔĶÁ£¬¿ÉʹÓÃÉÏ·½ "Êղص½ÎÒµÄä¯ÀÀÆ÷" ¹¦ÄÜ ºÍ "¼ÓÈëÊéÇ©" ¹¦ÄÜ£¡




/////////////////////////////////////////////////////////////////////////////¡¡¡¡


¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­Page¡¡172¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­

//¡¡CDialogDemoApp£º¡¡¡¡



//¡¡ÔÚ¡¡DialogDemo¡£cpp¡¡¡¡ÖаüÀ¨Á˸ÃÀàµÄʵÏÖ¡¡¡¡



//¡¡¡¡



class¡¡CDialogDemoApp¡¡£º¡¡public¡¡CWinApp¡¡¡¡



£û¡¡¡¡



public£º¡¡¡¡



CDialogDemoApp£¨£©£»¡¡¡¡



//¡¡ÖØÔØ¡¡¡¡



//¡¡ClassWizard¡¡Éú³ÉµÄÐ麯ÊýÖØÔØ¡¡¡¡



//£û£ûAFX_VIRTUAL£¨CDialogDemoApp£©¡¡¡¡



public£º¡¡¡¡



virtual¡¡BOOL¡¡InitInstance£¨£©£»¡¡¡¡



//£ý£ýAFX_VIRTUAL¡¡¡¡



//¡¡ÊµÏÖ¡¡¡¡



//£û£ûAFX_MSG£¨CDialogDemoApp£©¡¡¡¡



//¡¡×¢Òâ¡¡ClassWizard¡¡½«ÔÚÕâÀïÌí¼Ó»òɾ³ý³ÉÔ±º¯Êý¡¡¡¡



//¡¡²»Òª±à¼­ÄãÔÚÕâÀïËù¿´µ½µÄÕâЩÉú³É´úÂë¿é¡¡£¡¡¡¡¡



//£ý£ýAFX_MSG¡¡¡¡



DECLARE_MESSAGE_MAP£¨£©¡¡¡¡



£ý£»¡¡¡¡



¡¡¡¡¡¡¡¡



/////////////////////////////////////////////////////////////////////////////¡¡¡¡



//£û£ûAFX_INSERT_LOCATION£ý£ý¡¡¡¡



//¡¡Microsoft¡¡Developer¡¡Studio¡¡½«ÔÚ½ô½Ó×ÅÉÏÒ»ÐÐ֮ǰµÄµØ·½²åÈ븽¼ÓµÄÉùÃ÷¡£¡¡¡¡



#endif¡¡//¡¡£¡defined¡¡

£¨AFX_DIALOGDEMO_H__7ABABF88_0C8C_11D2_BC21_0000B4810A31__INCLUDED_£©¡¡¡¡



ÔÚÍ·ÎļþDialogDemo¡£hÖж¨ÒåÁËÓ¦ÓóÌÐòÀàCDialogDemoApp¡£ÔÚMFC¡¡


¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­Page¡¡173¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­

ÖУ¬Ó¦ÓóÌÐòÀà·â×°ÁËÒ»¸öWindowsÓ¦ÓóÌÐòµÄ³õʼ»¯¡¢ÔËÐкÍÖÕ¡¡

Ö¹¡£Ã¿Ò»¸öMFCÓ¦ÓóÌÐò¶¼±ØÐë°üÀ¨Ò»¸ö´ÓCWinAppÅÉÉúµÄÓ¦ÓóÌÐò¡¡

À࣬ÔÚÓ¦ÓóÌÐòDialogDemoÖУ¬Õâ¸öÀà¾ÍÊÇCDialogDemoApp¡£Õâ¸ö¶Ô¡¡

ÏóÔÚ´°¿Ú±»´´½¨Ö®Ç°½øÐй¹Ôì¡£ÀàCWinApp´ÓÀàCWinThreadÅÉÉú£¬Ëü¡¡

´ú±íÁËÓ¦ÓóÌÐòµÄÖ÷Ö´ÐÐỊ̈߳¬ÕýÈçÎÒÃÇÔÚÇ°ÃæµÄÕ½ÚÖÐËù½²ÊöµÄÄÇ¡¡

Ñù£¬Ò»¸öÓ¦ÓóÌÐò¿ÉÒÔÓжà¸öÖ´ÐÐÏ̡߳£ÔÚMFCµÄ×î½ü¿´µ½°æ±¾ÖУ¬¡¡

ÒÑΪÀàCWinThreadµÄ³ÉÔ±º¯ÊýInitInstance¡¢Run¡¢ExitInstanceºÍ¡¡

OnIdleÌṩÁËĬÈϵÄʵÏÖ¡£ÓÉÓÚÎÒÃÇÔÚÌÖÂÛCWinAppʱ¸ü²àÖØÓÚËü×÷¡¡

ΪӦÓóÌÐò¶ÔÏóËù°çÑݵĽÇÉ«£¬¶ø²»ÊÇ×÷ΪÖ÷Ị̈߳¬Òò´Ë£¬ÎÒÃÇÔÚÌÖ¡¡

ÂÛÇ°ÃæÌáµ½µÄËĸö³ÉÔ±º¯ÊýµÄʱºò£¬¿ÉÒÔ°ÑËüÃÇÏëÏóΪÔÚÀàCWinApp¡¡

¶¨ÒåµÄ³ÉÔ±º¯Êý£¬¼´Á¢×ãÓÚÓ¦ÓóÌÐò¶ÔÏóµÄ½Ç¶ÈÀ´¿´´ýºÍ·ÖÎöËüÃǵġ¡

ÐÐΪ£¬¶ø²»ÊÇÁ¢×ãÓÚÒ»¸öµ¥¶ÀµÄÏ̵߳ĽǶȡ£¡¡¡¡



Ó¦ÓóÌÐòÀ๹³ÉÁËÓ¦ÓóÌÐòµÄÖ÷Ö´ÐÐÏ̡߳£Ê¹ÓÃWin32¡¡¡¡¡¡APIº¯Êý¿ÉÒÔ¡¡

´´½¨ÐµÄÖ´ÐÐÏ̡߳£ÕâЩÏß³ÌÈÔ¿ÉÒÔʹÓÃMFC¿â£¬ÏêϸµÄÐÅÏ¢Çë²Î¿¼¡¡

±¾Êé¹ØÓÚ½ø³ÌºÍÏ̵߳ÄÓйØÕ½ڡ£¡¡¡¡



ͬÆäËüµÄÈκÎWindowsÓ¦ÓÃÒ»Ñù£¬¿ò¼ÜÓ¦ÓóÌÐòÈÔÈ»¾ßÓÐÒ»¸öWinMain¡¡

º¯Êý¡£µ«ÊÇ£¬ÔÚÓÉAppWizardÉú³ÉµÄÓ¦ÓóÌÐò¿ò¼ÜÖУ¬ÎÒÃÇÈ´ÕÒ²»µ½¡¡

¶ÔWinMainº¯ÊýµÄÉùÃ÷»ò¶¨Òå¡£ÔÚMFCÓ¦ÓóÌÐòÖУ¬WinMainº¯ÊýÊÇÓÉ¡¡

Àà¿âÌṩµÄ£¬ËüÔÚÓ¦ÓóÌÐòÆô¶¯Ê±±»µ÷Óá£WinMainº¯ÊýÖ´ÐÐÈç×¢²á¡¡

´°¿ÚÀàÖ®ÀàµÄ±ê×¼·þÎñ¡£½Ó×Å£¬Ëüµ÷ÓÃÓ¦ÓóÌÐò¶ÔÏóµÄ³ÉÔ±º¯ÊýÀ´³õ¡¡

ʼ»¯²¢ÇÒÔËÐÐÓ¦ÓóÌÐò¡£Í¨¹ýÖØÔØWinMainº¯ÊýËùµ÷ÓõÄÀàCWinAppµÄ¡¡

³ÉÔ±º¯Êý¿ÉÒÔ×Ô¶¨ÒåWinMainº¯Êý¡£¡¡¡¡



WinMainº¯Êýͨ¹ýµ÷ÓÃÓ¦ÓóÌÐò¶ÔÏóµÄInitApplicationºÍ¡¡

InitInstance³ÉÔ±º¯ÊýÀ´³õʼ»¯Ó¦ÓóÌÐò£¬Í¨¹ýµ÷ÓÃRun³ÉÔ±º¯ÊýÔË¡¡

ÐÐÓ¦ÓóÌÐòµÄÏûϢѭ»·£¬×îºóÔÚ³ÌÐò½áÊøʱµ÷ÓóÌÐò³ÌÐòµÄ¡¡

ExitInstance³ÉÔ±º¯Êý¡£ÆäÖÐRunº¯ÊýÒ»°ãÓÉMFCÌṩ£¬¶ø¡¡

InitApplication¡¢InitInstanceºÍExitInstanceÒ»°ãÐèÒª³ÌÐòÔ±´´¡¡

½¨»ò½øÐÐÖØÔØ¡£¡¡¡¡



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



¡¡¡¡l¡¡ÓÉÓÚÔÚWin32»·¾³Ï£¬Ã¿Ò»¸öÓ¦ÓóÌÐòµÄʵÀý¶¼ÊǶÀÁ¢µÄ£¬ËüÃÇÓС¡

¡¡¡¡¡¡×Å¡¡×Ô¼ºµÄÐéÄâµØÖ·¿Õ¼ä£¬Òò´Ë£¬ÔÚÄ¿Ç°°æ±¾µÄMFCÖУ¬³ÉÔ±º¯Êý¡¡

¡¡¡¡¡¡CWinApp£º£ºInitApplicationÒѱ»·ÏÆú£¬Ô­À´ÔÚInitApplicationÖС¡

¡¡¡¡¡¡½øÐеijõʼ»¯²Ù×÷Ó¦¸ÃÒƵ½InitInstanceÖнøÐС£¡¡¡¡



ÓÉAppWizardÉú³ÉµÄ»ùÓÚ¶Ô»°¿òµÄ¿ò¼ÜÓ¦ÓóÌÐòÌṩÁ˶ԡ¡

InitInstanceµÄĬÈÏÖØÔØ£¬Ò²ÕýÊÇÔڸóÉÔ±º¯ÊýÖÐÌṩÁË»ùÓÚ¶Ô»°¿ò¡¡


¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­Page¡¡174¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­

µÄÓ¦ÓóÌÐòµÄÌص㡣ÔÚMFCÖУ¬ÎÞÂÛÊÇ»ùÓÚ¶Ô»°¿òµÄÓ¦ÓóÌÐò£¬»¹ÊÇ¡¡

»ùÓÚÎĵµ/ÊӽṹµÄÓ¦ÓóÌÐò£¬ËüÃǵÄÓ¦ÓóÌÐò¶ÔÏó¶¼ÊÇ´ÓCWinAppÅÉ¡¡

Éú¶øÀ´µÄ£¬ËüÃÇÖ®¼äµÄ¹¦Äܵľ޴ó²îÒ죬ÍùÍù¾ÍÊÇͨ¹ý¶ÔÀàCWinApp¡¡

µÄ³ÉÔ±º¯Êý½øÐв»Í¬µÄÖØÔØÀ´ÌåÏֵġ£¡¡¡¡



ÔÚÿһ¸öͬһӦÓóÌÐòµÄʵÀý±»Æô¶¯Ê±£¬WinMainº¯Êýµ÷ÓÃÒ»´Î¡¡

InitInstance³ÉÔ±º¯Êý¡£Ô­ÓеÄInitApplication²»ÔÙÓÐÒâÒ壬ÿһ¡¡

¸öÓ¦ÓóÌÐòµÄʵÀý¶¼±»ÈÏΪÊǶÀÁ¢µÄ£¬¶ÔÓ¦ÓóÌÐòµÄ³õʼ»¯Í¬¶ÔʵÀý¡¡

µÄ³õʼ»¯Ã»Óб¾ÖÊÇø±ð¡£¶ÔÓÚInitInstance³ÉÔ±º¯Êý£¬ÎÒÃÇÕâʱֻÐè¡¡

ÖªµÀËüÔÚµ±Ó¦ÓóÌÐò½øÐгõʼ»¯µÄʱºòÓÉWinMainº¯Êýµ÷Ó᣹ØÓÚ»ù¡¡

ÓÚ¶Ô»°¿òµÄÓ¦ÓóÌÐòµÄInitInstance³ÉÔ±º¯ÊýµÄµäÐÍʵÏÖ£¬ÎÒÃǽ«ÔÚ¡¡

±¾ÕºóÃæµÄÄÚÈÝÖÐרÃŽ²Êö¡£¡¡¡¡



ÀàCDialogDemoAppµÄʵÏÖ°üº¬ÔÚÎļþDialogDemo¡£cppÖУ¬ÆäÇåµ¥Èç¡¡

Ï£º¡¡¡¡



//¡¡DialogDemo¡£cpp¡¡£º¡¡ÎªÓ¦ÓóÌÐò¶¨ÒåÀàµÄÐÐΪ¡¡¡¡



//¡¡¡¡



#include¡¡¡¨stdafx¡£h¡¨¡¡¡¡



#include¡¡¡¨DialogDemo¡£h¡¨¡¡¡¡



#include¡¡¡¨DialogDemoDlg¡£h¡¨¡¡¡¡



#ifdef¡¡_DEBUG¡¡¡¡



#define¡¡new¡¡DEBUG_NEW¡¡¡¡



#undef¡¡THIS_FILE¡¡¡¡



static¡¡char¡¡THIS_FILE£§£§¡¡=¡¡__FILE__£»¡¡¡¡



#endif¡¡¡¡



/////////////////////////////////////////////////////////////////////////////¡¡¡¡



//¡¡CDialogDemoApp¡¡¡¡



BEGIN_MESSAGE_MAP£¨CDialogDemoApp£»¡¡CWinApp£©¡¡¡¡



//£û£ûAFX_MSG_MAP£¨CDialogDemoApp£©¡¡¡¡



//¡¡×¢Òâ¡¡ClassWizard¡¡½«ÔÚ´ËÌí¼Ó»òɾ³ýÓ³Éäºê¡£¡¡¡¡



//¡¡²»ÒªÉ¾³ýÄãÔÚÕâÀï¿´µ½µÄÕâЩÉú³É´úÂë¿é¡¡£¡¡¡¡¡


¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­Page¡¡175¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­

//£ý£ýAFX_MSG¡¡¡¡



ON_MAND£¨ID_HELP£»¡¡CWinApp£º£ºOnHelp£©¡¡¡¡



END_MESSAGE_MAP£¨£©¡¡¡¡



/////////////////////////////////////////////////////////////////////////////¡¡¡¡



//¡¡CDialogDemoApp¡¡¹¹Ôì¡¡¡¡



CDialogDemoApp£º£ºCDialogDemoApp£¨£©¡¡¡¡



£û¡¡¡¡



//¡¡TODO£º¡¡ÔÚÕâÀïÌí¼Ó¹¹Ôì´úÂ룬¡¡¡¡



//¡¡½«ËùÓÐÖØÒªµÄ³õʼ»¯·ÅÈë¡¡InitInstance¡¡¡¡



£ý¡¡¡¡



/////////////////////////////////////////////////////////////////////////////¡¡¡¡



//¡¡Î¨Ò»µÄ¡¡CDialogDemoApp¡¡¶ÔÏó¡¡¡¡



CDialogDemoApp¡¡theApp£»¡¡¡¡



/////////////////////////////////////////////////////////////////////////////¡¡¡¡



//¡¡CDialogDemoApp¡¡³õʼ»¯¡¡¡¡



BOOL¡¡CDialogDemoApp£º£ºInitInstance£¨£©¡¡¡¡



£û¡¡¡¡



AfxEnableControlContainer£¨£©£»¡¡¡¡



//¡¡±ê×¼³õʼ»¯¡¡¡¡



//¡¡Èç¹ûÄã²»ÐèҪʹÓÃÕâЩÌØÐÔ£¬²¢ÇÒÏ£Íû¼õС×îÖÕ¿ÉÖ´ÐÐÎļþµÄ´óС£¬Äã¿ÉÒÔɾ³ý¡¡¡¡



//¡¡ÏÂÃæµÄÌض¨µÄ³õʼ»¯¹ý³ÌÖв»ÐèÒªµÄ²¿·Ö¡£¡¡¡¡



#ifdef¡¡_AFXDLL¡¡¡¡



Enable3dControls£¨£©£»¡¡//¡¡µ±Í¨¹ý¹²Ïí¡¡DLL¡¡Ê¹Óá¡MFC¡¡Ê±µ÷Óá¡¡¡



#else¡¡¡¡



Enable3dControlsStatic£¨£©£»¡¡//¡¡µ±Í¨¹ý¾²Ì¬Á´½Óµ½¡¡MFC¡¡Ê±µ÷Óá¡¡¡



#endif¡¡¡¡


¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­Page¡¡176¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­

CDialogDemoDlg¡¡dlg£»¡¡¡¡



m_pMainWnd¡¡=¡¡&dlg£»¡¡¡¡



int¡¡nResponse¡¡=¡¡dlg¡£DoModal£¨£©£»¡¡¡¡



if¡¡£¨nResponse¡¡==¡¡IDOK£©¡¡¡¡



£û¡¡¡¡



//¡¡TODO£º¡¡ÔÚÕâÀïÌí¼Óµ±Ê¹Óá¡OK¡¡¹Ø±Õ¶Ô»°¿òʱµÄ´¦Àí´úÂë¡¡¡¡



£ý¡¡¡¡



else¡¡if¡¡£¨nResponse¡¡==¡¡IDCANCEL£©¡¡¡¡



£û¡¡¡¡



//¡¡TODO£º¡¡ÔÚÕâÀïÌí¼Óµ±Ê¹Óá¡Cancel¡¡¹Ø±Õ¶Ô»°¿òʱµÄ´¦Àí´úÂë¡¡¡¡



£ý¡¡¡¡



//¡¡ÓÉÓÚ¶Ô»°¿òÒѱ»¹Ø±Õ£¬·µ»Ø¡¡FALSE¡¡²¢Í˳öÓ¦ÓóÌÐò£¬¶ø²»ÐèÒªÆô¶¯Ó¦ÓóÌÐò¡¡¡¡



//¡¡ÏûÏ¢±Ã¡£¡¡¡¡



return¡¡FALSE£»¡¡¡¡



£ý¡¡¡¡



ÉÏÃæµÄÔ´´úÂëΪÀàCDialogDemoAppÌṩÁËÒ»¸ö¿ÕµÄ¹¹Ô캯ÊýºÍÒ»¸ö¶Ô¡¡

InitInstanceµÄĬÈÏÖØÔØ¡£ÎÒÃÇ°ÑÌÖÂÛµÄÖصã·ÅÔÚInitInstance³ÉÔ±¡¡

º¯ÊýÉÏ¡£ÔÚInitInstance³ÉÔ±º¯ÊýµÄÒ»¿ªÊ¼£¬Ïȵ÷ÓÃMFCÈ«¾Öº¯Êý¡¡

AfxEnableControlContainer£¬¸Ãº¯ÊýΪӦÓóÌÐòÌṩÁ˶ÔOLE¿Ø¼þ¡¡

£¨ÐµÄÊõÓï³Æ×÷ActiveX¿Ø¼þ£©µÄÖ§³Ö¡£¡¡¡¡



½Ó×Å£¬InitInstance³ÉÔ±º¯Êýµ÷ÓÃÀàCWinAppµÄ³ÉÔ±º¯Êý¡¡

Enable3dControls»òEnable3dControlsStaticÒÔÔÊÐí¶Ô»°¿òºÍ´°¿Ú¿É¡¡

ÒÔʹÓþßÓÐÈýάÍâ¹ÛµÄ¿Ø¼þ¡£ÕâÁ½¸ö³ÉÔ±º¯Êý¼ÓÔØCTL3D32¡£DLL²¢ÇÒ¡¡

×¢²áÓ¦ÓóÌÐò¡£Enable3dControlsºÍEnable3dControlsStaticµÄÇø±ð¡¡

ÔÚÓÚÒ»¸öÔÚÁ´½Óµ½MFC¶¯Ì¬Á´½Ó¿âʱʹÓ㬶øÁíÒ»¸öÔÚʹÓÃMFCµÄ¾²Ì¬¡¡

Á´½ÓʱʹÓᣡ¡¡¡



MFC¡¡×Ô¶¯ÎªÒÔÏ´°¿ÚÀàÌṩ3D¿Ø¼þЧ¹û£º¡¡¡¡



¡¡¡¡¡¡l¡¡CDialog¡¡¡¡



¡¡¡¡¡¡l¡¡CDialogBar¡¡¡¡


¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­Page¡¡177¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­

¡¡¡¡l¡¡CFormView¡¡¡¡



¡¡¡¡l¡¡CPropertyPage¡¡¡¡



¡¡¡¡l¡¡CPropertySheet¡¡¡¡



¡¡¡¡l¡¡CControlBar¡¡¡¡



¡¡¡¡l¡¡CToolBar¡¡¡¡



Èç¹ûÄãËùÏ£ÍûµÃµ½3DЧ¹ûµÄ¿Ø¼þÊôÓÚÒÔÉÏÀàÐÍÖ®Ò»µÄ»°£¬ÄãÖ»Ðèµ÷Óá¡

Enable3dControls»òEnable3dControlsStatic¼´¿É¡£·´Ö®Ôò±ØÐëÖ±½Ó¡¡

µ÷ÓÃÏàÓ¦µÄCTL3D32¡¡APIº¯Êý¡£¡¡¡¡



È»ºóÔÚInitInstanceÖж¨ÒåÁËÀàÐÍΪCDialogDemoDlgµÄ¶ÔÏódlg£¬È»¡¡

ºó½«ÆäÖ¸Õ븳ÓèÀàÐÍΪCWndµÄ³ÉÔ±±äÁ¿m_pMainWnd¡£³ÉÔ±±äÁ¿¡¡

m_pMainWndÓÃÀ´±£´æÖ¸ÏòÏß³ÌÖ÷´°¿Ú¶ÔÏóµÄÖ¸Õ룬µ±ÓÉm_pMainWndÒý¡¡

ÓõĴ°¿Ú±»¹Ø±Õʱ£¬¸ÃÏß³ÌÓÉMFC¡¡×Ô¶¯ÖÕÖ¹¡£µ±Ó¦ÓóÌÐòµÄÖ÷Ï̱߳»¡¡

ÖÕֹʱ£¬¸ÃÓ¦ÓóÌÐòÏàÓ¦µÄÒ²±»ÖÕÖ¹¡£Èç¹û¸Ã³ÉÔ±µÄֵΪNULL£¬ÔòÓ¦¡¡

ÓóÌÐòµÄCWinApp¶ÔÏóµÄÖ÷´°¿Ú±»ÓÃÀ´ÅжÏÏ̺߳ÎʱÖÕÖ¹¡£³ÉÔ±¡¡

m_pMainWnd¾ßÓй²ÓзÃÎÊȨÏÞ¡£¶ÔÓÚ¹¤×÷ÕßÏ̶߳øÑÔ£¬¸ÃÊý¾Ý³ÉÔ±µÄ¡¡

Öµ´ÓÆ丸Ï̼̳߳С£¡¡¡¡



½Ó×ÅInitInstanceµ÷ÓÃÁ˶ÔÏódlgµÄ³ÉÔ±º¯ÊýDoModal£¬¸Ã³ÉÔ±º¯ÊýÒÔ¡¡

ģ̬·½Ê½µ÷ÓöԻ°¿ò²¢ÔÚ½áÊøʱ·µ»Ø¶Ô»°¿òµÄ½á¹û¡£ÔÚ¶Ô»°¿ò¼¤»î¡¡

ʱ£¬¸Ã³ÉÔ±º¯Êý´¦ÀíËùÓÐÓëÓû§µÄ½»»¥£¬Ò²¾ÍÊÇ˵£¬¶ÔÓÚģ̬¶Ô»°¡¡

¿ò£¬Óû§²»¿ÉÒÔÔÚ¶Ô»°¿ò¹Ø±Õ֮ǰÓëÆäËü´°¿Ú½øÐн»»¥¡£¡¡¡¡



Èç¹ûÓû§µ¥»÷Á˶Ի°¿òÖеÄOK»òCancel°´Å¥£¬ÏàÓ¦µÄÏûÏ¢´¦Àíº¯Êý£¬¡¡

ÈçOnOK»òOnCancel±»µ÷ÓÃÒÔÊÔͼ¹Ø±Õ¶Ô»°¿ò¡£OnOK³ÉÔ±º¯ÊýµÄĬÈÏÐС¡

ΪΪÑéÖ¤ºÍ¸üжԻ°¿òÊý¾Ý²¢ÒÔ½á¹ûIDOK¹Ø±Õ¶Ô»°¿ò£¬OnCancelµÄĬ¡¡

ÈÏÐÐΪΪÒÔ½á¹ûIDCANCEL¹Ø±Õ¶Ô»°¿ò²¢²»¸ü»ú¹Ø±¨ËùÓжԻ°¿òÊý¾Ý¡£¡¡

ͨ¹ýÖØÔØÕâЩÏûÏ¢´¦Àíº¯Êý¿ÉÒԸıäËüÃǵÄÐÐΪ¡£¡¡¡¡



ÔÚDoModal·µ»Øʱ£¬¶Ô»°¿ò½«±»¹Ø±Õ£¬ÀíËùµ±È»µÄ£¬»ùÓڸöԻ°¿òµÄ¡¡

Ó¦ÓóÌÐòÒ²Ó¦¸Ã±»¹Ø±Õ£¬Òò´ËÔÚInitInstanceµÄ×îºóʹÓÃÁËÓï¾ä¡¡¡¡



return¡¡FALSE£»¡¡¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡µÚÈý½Ú¡¡MFCÓ¦ÓóÌÐòµÄÏûϢѭ»·¡¡¡¡



ÉÏÃæµÄ¶ÔÓ¦ÓóÌÐòµÄÀàµÄ¶¨ÒåºÍÉùÃ÷»¹°üÀ¨ÁËMFCµÄÏûϢѭ»·¡¡


¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­Page¡¡178¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­

£¨message¡¡¡¡¡¡loop£©£¬ÏÂÃæÎÒÃÇÀ´ÏêϸµÄÃèÊöMFCÓ¦ÓóÌÐòµÄÏûϢѭ»·¡£¡¡

¿ò¼ÜÓ¦ÓóÌÐò´¦ÀíWindowsÏûÏ¢µÄ·½Ê½Í¬ÆäËüWindowsÓ¦ÓóÌÐòÊÇÀàËÆ¡¡

µÄ£¬Ö»²»¹ýËüÌṩÁËһЩ·½·¨À´Ê¹µÃÕâ¸ö¹ý³Ì¸ü¼ÓµÄ·½±ã£¬¸ü¼ÓµÄÒס¡

ÓÚά»¤ºÍ¸üºÃµÄ°ü×°¡£¡¡¡¡



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



¡¡¡¡l¡¡Îª±ãÓÚ¶ÁÕßÀí½â£¬ÔÚ´ËÎÒÃǸø³öÒ»¸öMFC¶Ô¶Ô»°¿ò¿ØÖƵÄÖ§³ÖµÄÊ÷¡¡

¡¡¡¡¡¡Í¼£¨Èçͼ4¡£8Ëùʾ£©¡£¡¡¡¡



ÔÚÀàCWinAppµÄRun³ÉÔ±º¯ÊýÖеÄÏûϢѭ»·»ñÈ¡¸÷ÖÖʼþËù²úÉúµÄÅŶӡ¡

ÏûÏ¢£¨queued¡¡¡¡message£©£¬Ó¦ÓóÌÐòÏûϢѭ»·µÄ¿ò¼ÜʵÏÖÊǽ«ËüÃÇ·Ö·¢¡¡

µ½ºÏÊʵĴ°¿Ú¡£¡¡¡¡



ÔÚMFCÖУ¬Ã¿Ò»¸öµ¥¶ÀµÄÏûÏ¢¶¼ÓÉÒ»¸öרÃŵĺ¯Êý½øÐд¦Àí£¬ÕâÖֳơ¡

×÷ÏûÏ¢´¦Àíº¯Êý¡¡£¨message¡­handler¡¡¡¡function»òmessage¡¡¡¡handler»ò¡¡

handler£©µÄרÃź¯ÊýÒÔÀàµÄ³ÉÔ±º¯ÊýµÄ·½Ê½½øÐж¨Òå¡£´¦ÀíÃüÁîÏûÏ¢¡¡

µÄº¯Êý»¹³£±»³Æ×÷ÃüÁî´¦Àíº¯Êý¡¡£¨mand¡¡handler£©¡£¡¡¡¡



WindowsÓ¦ÓóÌÐòÊÇÏûÏ¢Çý¶¯µÄ£¬Òò´Ë±àдÏûÏ¢´¦Àíº¯Êý¾Í³ÉÁ˱àд¡¡

¿ò¼ÜÓ¦ÓóÌÐòµÄ¹¤×÷ÖеÄÒ»¸öºÜ´óµÄ×é³É²¿·Ö¡£¡¡¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Í¼4¡£¡¡8¡¡MFC¡¡ÖжԻ°¿ò¿Ø¼þÀàµÄÊ÷×´½á¹¹Í¼¡¡¡¡



ÿһ¸öÓÐÄÜÁ¦»ñÈ¡ÏûÏ¢»òÃüÁîµÄ¿ò¼ÜÀ඼ÓÐËü×Ô¼ºµÄÏûÏ¢Ó³Éä¡¡

£¨message¡¡¡¡¡¡map£©£¬¿ò¼ÜʹÓÃÏûÏ¢Ó³ÉäÀ´½¨Á¢ÏûÏ¢ºÍÃüÁîµ½ËüÃǵĴ¦Àí¡¡

º¯ÊýÖ®¼äµÄÁ´½Ó¡£ËùÓдÓÀàCCmdTargetÅÉÉúµÄÀ඼¿ÉÒÔÓÐËü×Ô¼ºµÄÏû¡¡

Ï¢Ó³Éä¡£¾¡¹ÜÎÒÃdz£³£Çø±ðÏûÏ¢ºÍÃüÁîÁ½¸öÊõÓµ«ÕâÀïËù˵µÄÏûÏ¢¡¡


¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­Page¡¡179¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­

Ó³Éäͬʱ¶ÔËüÃǽøÐд¦Àí¡£¡¡¡¡



ÏÂÃæÎÒÃÇÀ´¿´Ò»ÏÂÏûÏ¢ÊÇÈçºÎ·¢ËͺͻñÈ¡µÄ¡£¡¡¡¡



ºÜ¶àÏûÏ¢À´×ÔÓÚÓû§ºÍ³ÌÐòÖ®¼äµÄ½»»¥£ºµ±Óû§Ê¹ÓÃÊó±êµ¥»÷Á˲˵¥¡¡

Ïî»ò¹¤¾ßÌõ°´Å¥»ò°´ÏÂÁË¿ì½Ý¼üʱ£¬¼´²úÉúÁËÃüÁͬÑùÓÉÓû§²úÉú¡¡

µÄWindowsÏûÏ¢»¹¿ÉÒÔÀ´¡¡×ÔÒƶ¯´°¿Ú»ò¸Ä±ä´°¿ÚµÄ´óС¡£´ËÍ⣬µ±³Ì¡¡

ÐòÆô¶¯»òÖÕÖ¹¡¢´°¿Ú»ñµÃ»òʧȥ½¹µãµÈµÈʼþ·¢Éúʱ£¬ÏàÓ¦µÄ¡¡

WindowsÏûÏ¢Ò²½«±»·¢ËÍ¡£¿Ø¼þ×÷ΪһÖÖÌØÊâÐÎʽµÄ´°¿Ú£¬ÏàÓ¦µÄ¿Ø¡¡

¼þ֪ͨÏûÏ¢Ò²ÔÚÀàËƵÄÇéÐÎϲúÉú¡£¡¡¡¡



Run³ÉÔ±º¯ÊýÓÃÀ´»ñÈ¡ÏûÏ¢²¢½«ËüÃÇ·¢Ë͵½ºÏÊʵĴ°¿Ú£¬ºÜ¶àµÄÃüÁî¡¡

ÏûÏ¢±»·¢Ë͵½Ó¦ÓóÌÐòµÄÖ÷´°¿Ú£¬ÓÉÀà¿âÔ¤Ïȶ¨ÒåµÄWindowProcº¯Êý¡¡

»ñµÃÕâЩÏûÏ¢£¬È»ºó¸ù¾ÝËù»ñµÃµÄÏûÏ¢µÄÀàÐÍÀ´ÒÔ²»Í¬µÄ·½Ê½¶ÔËüÃÇ¡¡

½øÐд¦Àí¡£¡¡¡¡



×î³õ½ÓÊÜÏûÏ¢µÄ±ØÐëÊÇÒ»¸ö´°¿Ú¶ÔÏó¡£WindowsÏûϢͨ³£Ö±½ÓÓɸô°¡¡

¿Ú¶ÔÏó½øÐд¦Àí¡£¶øÃüÁîÏûÏ¢Ò»°ãÓÉÓ¦ÓóÌÐòµÄÖ÷¿ò¼Ü´°¿Ú¿ªÊ¼£¬°´¡¡

ÕÕÃüÁî·¾¶ÃèÊöµÄÃüÁîÄ¿±êÁ´½øÐд¦Àí¡£¡¡¡¡



µ±Ò»¸öÃüÁîÄ¿±êÁ´»ñµÃÏûÏ¢»òÃüÁîʱ£¬Ëü½«ËÑË÷ËüµÄÏûÏ¢Ó³ÉäÒÔÑ°ÕÒ¡¡

Æ¥ÅäÏî¡£Èç¹û¸ÃÏûÏ¢µÄÒ»¸ö´¦Àíº¯Êý´æÔÚ£¬¸Ã´¦Àíº¯Êý½«±»µ÷Óᣡ¡¡¡



ÓëÃüÁͬ£¬¶ÔÓÚ±ê×¼WindowsÏûÏ¢£¬ËüÃDz¢²»¾­¹ýÃüÁîÄ¿±êÁ´£¬Í¨¡¡

³£ÓɸÃÏûÏ¢µÄÄ¿±ê´°¿Ú½øÐд¦Àí£¬Õâ¸ö¡¡Ä¿±ê´°¿Ú¿ÉÄÜÊÇÖ÷¿ò¼Ü´°¿Ú£¬¡¡

Ò²¿ÉÄÜÊÇÒ»¸öMDI×Ó´°¿Ú¡¢Ò»¸ö±ê×¼¿Ø¼þ¡¢¶Ô»°¿ò¡¢ÊÓ»òÆäËüÐÎʽµÄ¡¡

×Ó´°¿Ú¡£¡¡¡¡



ÔÚÔËÐÐʱ£¬Ã¿Ò»¸öWindows´°¿Ú¶¼ÓëÒ»¸ö´°¿Ú¶ÔÏó½¨Á¢¹ØÁª£¬¸Ã´°¿Ú¡¡

¶ÔÏóÓÉÖ±½ÓµÄ»ò¼ä½ÓµÄÓÉÀàCWndÅÉÉú£¬²¢ÇÒÓÐ×ÅËü×Ô¼ºµÄÏûÏ¢Ó³ÉäºÍ¡¡

´¦Àíº¯Êý¡£¿ò¼ÜʹÓÃÕâ¸öÏûÏ¢Ó³ÉäÀ´½«µ
·µ»ØĿ¼ ÉÏÒ»Ò³ ÏÂÒ»Ò³ »Øµ½¶¥²¿ ÔÞ£¨1£© ²È£¨1£©
¿ì½Ý²Ù×÷: °´¼üÅÌÉÏ·½Ïò¼ü ¡û »ò ¡ú ¿É¿ìËÙÉÏÏ·­Ò³ °´¼üÅÌÉ쵀 Enter ¼ü¿É»Øµ½±¾ÊéĿ¼ҳ °´¼üÅÌÉÏ·½Ïò¼ü ¡ü ¿É»Øµ½±¾Ò³¶¥²¿!
ÎÂÜ°Ìáʾ£º ο´Ð¡ËµµÄͬʱ·¢±íÆÀÂÛ£¬Ëµ³ö×Ô¼ºµÄ¿´·¨ºÍÆäËüС»ï°éÃÇ·ÖÏíÒ²²»´íŶ£¡·¢±íÊéÆÀ»¹¿ÉÒÔ»ñµÃ»ý·ÖºÍ¾­Ñé½±Àø£¬ÈÏÕæдԭ´´ÊéÆÀ ±»²ÉÄÉΪ¾«ÆÀ¿ÉÒÔ»ñµÃ´óÁ¿½ð±Ò¡¢»ý·ÖºÍ¾­Ñé½±ÀøŶ£¡