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