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

ÉîÈëdz³öMFCµÚ2°æ(PDF¸ñʽ)-µÚ83²¿·Ö

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




¡¡¡¡¡¡¡¡¡¡¡¡¡¡µ±ÏûÏ¢ËÍÀ´£¬¾ÍÓÉOnAppAbout¡¡´¦Àí£º¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡void¡¡CScribbleApp£º£ºOnAppAbout£¨£©¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£û¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡CAboutDlg¡¡aboutDlg£»¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡aboutDlg¡£DoModal£¨£©£»¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£ý¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡ÆäÖÐCAboutDlg¡¡ÊÇCDialog¡¡µÄÑÜÉúÀà±ð£º¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡class¡¡CAboutDlg¡¡£º¡¡public¡¡CDialog¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£û¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡enum¡¡£û¡¡IDD¡¡=¡¡IDD_ABOUTBOX¡¡£ý£»¡¡//¡¡IDD_ABOUTBOX¡¡ÊÇRC¡¡ÎļþÖеĶԻ°¿òÄ£°å×ÊÔ´¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£¡£¡£¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡DECLARE_MESSAGE_MAP£¨£©¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£ý£»¡¡



¡¡¡¡¡¡¡¡¡¡±ÈÖ®ÓÚSDK¡¡³ÌÐòÖеĶԻ°¿ò£¬ÕâÕæÊÇ·½±ãÌ«¶àÁË¡£´«Í³SDK¡¡³ÌÐòÒªÔÚRC¡¡ÎļþÖж¨Òå¡¡



¡¡¡¡¡¡¡¡¡¡¶Ô»°¿òÄ£°å£¨dialog¡¡template£¬Ò²¾ÍÊÇÆäÍâÐΣ©£¬ÔÚC¡¡³ÌÐòÖÐÉè¼Æ¶Ô»°¿òº¯Êý¡£ÏÖÔÚÖ»¡¡



¡¡¡¡¡¡¡¡¡¡Ðè´ÓCDialog¡¡ÑÜÉú³öÒ»¸öÀà±ð£¬È»ºó²úÉú¸ÃÀà±ðÖ®¶ÔÏ󣬲¢Ö¸¶¨RC¡¡ÎļþÖеĶԻ°¿òÃæ¡¡



¡¡¡¡¡¡¡¡¡¡°å×ÊÔ´£¬ÔÙµ÷ÓöԻ°¿ò¶ÔÏóµÄDoModal¡¡³ÉÔ±º¯Êý¼´¿É¡£¡¡



¡¡¡¡¡¡¡¡¡¡µÚ10¡¡ÕÂÒ»ÕûÕ½«ÌÖÂÛËùνµÄ¶Ô»°¿òÊý¾Ý½»»»£¨DDX¡¡£©Óë¶Ô»°¿òÊý¾ÝÈ·ÈÏ£¨DDV£©¡£¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡449¡¡


¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­Page¡¡512¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡µÚƪ¡¡¡¡¡¡¡¡œ³ö¡¡¡¡MFC¡¡¡¡³ÌʽÔOÓ‹¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¸ÄÓÃCEditView¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Scribble¡¡step0¡¡³ýÁË°ÑÒ»¸öÓ¦ÓóÌÐòµÄ¿Õ¿Ç×öºÃ£¬²»ÄÜÔÙ¹±Ï×Щʲô¡£Èç¹ûÎÒÃÇÔÚ¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡AppWizard¡¡²½ÖèÁùÖаÑCScribbleView¡¡µÄ»ù´¡Àà±ð´ÓCView¡¡¸ÄΪCEditView£¬Äǿɾ͡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ÓдóÃîÓÃÁË£º¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡CEditView¡¡ÊÇÒ»¸öÒѾ߱¸ÎÄ×ֱ༭ÄÜÁ¦µÄÀà±ð£¬ËüËùʹÓõĴ°¿ÚÊÇWindows¡¡¡¡µÄ±ê×¼¿Ø¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ÖÆ×é¼þÖ®Ò»Edit¡¡£¬ÆäSerializeRaw¡¡³ÉÔ±º¯Êý¿ÉÒÔ°ÑEdit¡¡¿ØÖÆ×é¼þÖеÄraw¡¡text¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£¨¶ø·Ç¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¸¶ÔÏó¡¹Ëù³ÖÓеÄ×ÊÁÏ£©Ð´µ½ÎļþÖС£µ±ÎÒÃÇÔÚAppWizard¡¡²½ÖèÁùÑ¡ÔñÁËËü£¬³ÌÐò´úÂëÖС¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ËùÓеÄCView¡¡Í³Í³±ä³ÉCEditView£¬¶ø×îÖØÒªµÄÁ½¸öÐéÄ⺯ÊýÔò±ä³É£º¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡void¡¡CScribbleDoc£º£ºSerialize£¨CArchive&¡¡ar£©¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£û¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡//¡¡CEditView¡¡contains¡¡an¡¡edit¡¡control¡¡which¡¡handles¡¡all¡¡serialization¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£¨£¨CEditView*£©m_viewList¡£GetHead£¨£©£©¡­¡·SerializeRaw£¨ar£©£»¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£ý¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡void¡¡CScribbleView£º£ºOnDraw£¨CDC*¡¡pDC£©¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£û¡¡



450¡¡


¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­Page¡¡513¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡µÚ£·Õ¡¡¡¡¡¡¡¡º††Î¶øÍêÕû£ºMFC¡¡¹ÇŽÖ³Ìʽ¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡CScribbleDoc*¡¡pDoc¡¡=¡¡GetDocument£¨£©£»¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡ASSERT_VALID£¨pDoc£©£»¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡//¡¡TODO£º¡¡add¡¡draw¡¡code¡¡for¡¡native¡¡data¡¡here¡¡

¡¡¡¡¡¡¡¡£ý¡¡



¾ÍÕâÑù£¬ÎÒÃDz»·Ñ´µ»ÒÖ®Á¦»ñµÃÁËÒ»¸ö¶à´°¿ÚµÄÎÄ×ֱ༭Æ÷£º¡¡



²¢ÓµÓжÁдµµÄÜÁ¦ÒÔ¼°Ô¤ÊÓÄÜÁ¦£º¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡451¡¡


¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­Page¡¡514¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡µÚƪ¡¡¡¡¡¡¡¡œ³ö¡¡¡¡MFC¡¡¡¡³ÌʽÔOÓ‹¡¡



452¡¡


¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­Page¡¡515¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡4¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ÉîÈëMFC¡¡³Ì¡¡Ðò¡¡Éè¡¡¼Æ¡¡



ÉîÈ뜳ö¡¡MFC¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡2nd¡¡Edition¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡453¡¡


¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­Page¡¡516¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡MFC¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡µÚƪ¡¡ÉîÈë¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡³ÌʽÔOÓ‹¡¡



¡¡454¡¡


¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­Page¡¡517¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­

¡¡¡¡¡¡¡¡¡¡µÚ£¸Õ¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Document¡­View¡¡ÉîÈë̽ÌÖ¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ÐζøÉÏÕßν֮µÀ£¬ÐζøÏÂÕßν֮Æ÷¡£¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¶ÔÓÚ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡View¡¡¡¡¶øÑÔ£¬ºÜÉÙÓÐÈËÄܹ»ÏȵÀ¶øºóÆ÷¡£¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Document/¡¡¡¡



¡¡¡¡¡¡¡¡¡¡ÍêÈ«ÓÉAppWziard¡¡´úÀÍ×ö³öµÄScribble¡¡step0£¬Ó¦ÓóÌÐòµÄÕû¸ö¼Ü¹¹£¨¿Õ¿Ç£©¶¼ÒѾ­½¨¡¡



¡¡¡¡¡¡¡¡¡¡¹¹ÆðÀ´ÁË£¬µ«ÊÇDocument¡¡Document¡¡ºÍVView¡¡iew¡¡»¹¿Õןü¸¸ö×îÖØÒªµÄº¯Êý£¨¶¼ÊÇÐéÄ⺯Êý£©µÈ×Å¡¡



¡¡¡¡¡¡¡¡¡¡ÄãÉè¼ÆÆäʵÌå¡£Õâ¾ÍÏñÒ»²¿Æû³µÍâÃæµÄ³µÌåÒÔ¼°ÄÚ²¿µÄÓÍ·µç·¶¼×°ÅäºÃÁË£¬µ«»¹µÈ×Å¡¡



¡¡¡¡¡¡¡¡¡¡×îÖØÒªµÄ·¢¶¯»ú£¨ÒýÇ棩ֲÈ룬²ÅÄܹ»²úÉú¶¯Á¦£¬¿ªÊ¼¡¸ÓÐËùΪ¡¹¡£¡¡



¡¡¡¡¡¡¡¡¡¡ÎÒÒѾ­ÔÚµÚ£·Õ¸ÅÂÔ½éÉÜÁËDocument/View¡¡¡¡ÒÔ¼°Document¡¡Template¡¡£¬»¹Óиü¶àµÄÃØÃܽ«¡¡



¡¡¡¡¡¡¡¡¡¡ÔÚ±¾Õ½Ò¶¡£¡¡



ΪʲôÐèÒªDocument¡­View¡¡£¨ÐζøÉÏ£©¡¡



¡¡¡¡¡¡¡¡¡¡MFC¡¡Ö®ËùÒÔΪApplication¡¡Framework¡¡£¬×îÖØÒªµÄÒ»¸öÌØÕ÷¾ÍÊÇËüÄܹ»½«¹ÜÀí×ÊÁϵijÌÐò¡¡



¡¡¡¡¡¡¡¡¡¡ÂëºÍ¸ºÔð×ÊÁÏÏÔʾµÄ³ÌÐò´úÂë·ÖÀ뿪À´£¬ÕâÖÖÄÜÁ¦ÓÉMFC¡¡¡¡µÄDocument/View¡¡Ìṩ¡£¡¡



¡¡¡¡¡¡¡¡¡¡Document/View¡¡ÊÇMFC¡¡¡¡µÄ»ùʯ£¬Á˽âËü£¬¶ÔÓÚÓÐЧÔËÓÃMFC¡¡Óм«¹Ø¼üµÄÓ°Ïì¡£ÉõÖÁ¡¡



¡¡¡¡¡¡¡¡¡¡OLE¡¡¸´ºÏÎļþ£¨pound¡¡document¡¡£©¶¼Êǽ¨ÖþÔÚDocument/View¡¡¡¡µÄ»ù´¡ÉÏÄØ£¡¡¡



¡¡¡¡¡¡¡¡¡¡¼¸ºõÿһ¸öÈí¼þ¶¼ÖÂÁ¦ÓÚ×ÊÁϵĴ¦Àí£¬±Ï¾¹ÐÅÏ¢ÒÔ¼°×ÊÁϵĹÜÀíÊǼÆËã»ú¼¼ÊõµÄÖ÷ÒªÓÃ;¡£¡¡



¡¡¡¡¡¡¡¡¡¡°ÑÊý¾Ý¹ÜÀíºÍÏÔʾ·½·¨·ÖÀ뿪À´£¬ÐèÒª¿¼ÂÇÏÂÁм¸¸öÒéÌ⣺¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡455¡¡


¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­Page¡¡518¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡µÚƪ¡¡¡¡¡¡¡¡ÉîÈë¡¡¡¡MFC¡¡¡¡³ÌʽÔOÓ‹¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡1¡£¡¡³ÌÐòµÄÄÄÒ»²¿·ÝÓµÓÐ×ÊÁÏ¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡2¡£¡¡³ÌÐòµÄÄÄÒ»²¿·Ý¸ºÔð¸üÐÂ×ÊÁÏ¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡3¡£¡¡ÈçºÎÒÔ¶àÖÖ·½Ê½ÏÔʾ×ÊÁÏ¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡4¡£¡¡ÈçºÎÈÃ×ÊÁϵĸü¸ÄÓÐÒ»ÖÂÐÔ¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡5¡£¡¡ÈçºÎ´¢´æ×ÊÁÏ£¨·Åµ½ÓÀ¾Ã´¢´æ×°ÖÃÉÏ£©¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡6¡£¡¡ÈçºÎ¹ÜÀíʹÓÃÕß½Ó¿Ú¡£²»Í¬µÄÊý¾ÝÀàÐÍ¿ÉÄÜÐèÒª²»Í¬µÄʹÓÃÕß½Ó¿Ú£¬¶øÒ»¸ö³Ì¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Ðò¿ÉÄܹÜÀí¶àÖÖÀàÐ͵Ä×ÊÁÏ¡£¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ÆäʵDocument¡¡/¡¡View¡¡²»ÊÇʲôÐÂÖ÷Ò⣬Xerox¡¡PARC¡¡ÊµÑéÊÒÊÇÕâÖÖ¹ÛÄîµÄÀÄõü¡£ËüÊÇ¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Smalltalk¡¡»·¾³ÖеĹؼüÐÔ²¿·Ý£¬ÔÚÄÇÀïËü±»³ÆΪModel¡­View¡­Controller¡¡£¨MVC¡¡£©¡£Æä¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ÖеÄModel¡¡¾ÍÊÇMFC¡¡¡¡µÄDocument¡¡£¬¶øController¡¡Ï൱ÓÚMFC¡¡¡¡µÄDocument¡¡Template¡£¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡»ØÏëÔÚûÓÐApplication¡¡Framework¡¡°ïÖúµÄʱ´ú£¨²¢²»Ì«¾ÃÒÔÇ°£©£¬ÄãÈçºÎ¹ÜÀí×ÊÁÏ£¿Ö»¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Òª³ÌÐòÐèÒª£¬Äã¾Í±ØÐëÏë³ö¸÷ÖÖ±íÏÖ×ÊÁϵķ½·¨£»ÄãÓÐÔðÈΰÑ×ÊÁϵĸ÷ÖÖ±íÏÖ·½·¨ºÍ×Ê¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Áϱ¾Ìåµ÷½â³öÒ»ÖÖ¹Øϵ³öÀ´¡£100¡¡Î»³ÌÐòÔ±£¬ÓÐ100¡¡ÖÖ×÷·¨£¡Èç¹ûÄãµÄ³ÌÐòÖ»´¦ÀíÒ»ÖÖ¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Êý¾ÝÀàÐÍ£¬Çé¿ö»¹²»ÖÁÓÚÌ«Ôã¡£¾Ù¸öÀý£¬×Ö´¦ÀíÈí¼þ¿ÉÒÔʹÓþ޴óµÄ×Ö·û´®Êý×飬°ÑÎÄ¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡×Öͳͳº¬À¨½øÀ´£¬²¢ÒÔASCII¡¡ÐÍʽÏÔʾ֮£¬¶¥¶àÂ±ä»»Ò»ÏÂ×ÖÐΣ¡¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡µ«Èç¹ûÄã±ØÐëά»¤Ò»ÖÖÒÔÉϵÄÊý¾ÝÀàÐÍ£¬Çé¿öÓÖµ±ÈçºÎ£¿ÏëÏóµÃµ½£¬Ã¿Ò»ÖÖÊý¾ÝÀàÐÍ¿É¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ÄÜÐèÒª¶ÀÌصĴ¦Àí·½Ê½£¬ÓÚÊÇÐèÒªÒ»Ì×¹¦Äܲ˵¥£»Ã¿Ò»ÖÖÊý¾ÝÀàÐÍÏÔÏÖÔÚ´°¿ÚÖУ¬Ó¦¸Ã¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ÓжÀÌصĴ°¿Ú±êÌâÒÔ¼°ËõСͼ±ê£»µ±×ÊÁϱ༭Íê±ÏÒª´æÅÌ£¬Ó¦¸ÃÓжÀÌصÄÀ©Õ¹Ãû£»µÇ¼¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ÔÚRegistry¡¡Ö®ÖÐÓ¦¸ÃÓжÀÌصÄÐͺš£ÔÙÕߣ¬Èç¹ûÄãÒÔ²»Í¬µÄ´°¿Ú£¬²»Í¬µÄÏÔÏÖ·½Ê½£¬Ðã¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡³öÒ»·Ý×ÊÁÏ£¬µ±×ÊÁÏÔÚijһ´°¿ÚÖб»±à¼­£¬ÄãÓ¦¸ÃÈÃÿһ´°¿ÚµÄ×ÊÁÏÏÔÏñÓëʵ¼Ê×ÊÁÏÖ®¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¼ä³£±£Ò»Ö¡£°ÉÀ²°ÉÀ²°ÉÀ²£¡¡¡¡¡K¡¡£¬·±ÔÓÊÂÎñ²»Ê¤Ã¶¾Ù¡£¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¹¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ºÜ¿ìµØ£¬ÎÊÌâ¾Í¸¡ÏÔ³öÀ´ÁË¡£³ÌÐò²»½öÒª×öÊý¾Ý¹ÜÀí£¬¸üÒª×ö¡¸ÓëÊý¾ÝÀàÐÍÏà¶ÔÓ¦µÄUI¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡µÄ¹ÜÀí¡£ÐÒÔ˵ÄÊÇ£¬½â¾öÖ®µÀÒàÒѸ¡ÏÖ£¬ÄǾÍÊǶÔÏóµ¼Ïò¹ÛÄîÖеÄModel¡­View¡­Controller¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£¨MVC¡¡£©£¬Ò²¾ÍÊÇMFC¡¡¡¡µÄDocument¡¡/¡¡View¡¡¡£¡¡



456¡¡


¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­Page¡¡519¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡µÚ£¸Õ¡¡¡¡¡¡¡¡Document¡­View¡¡¡¡ÉîÈë̽ӑ¡¡



Document¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡Ãû³ÆÓеãÁîÈ˾åÅ¡­Document¡¡ÁîÎÒÃÇÏëÆðÎÄ×Ö´¦ÀíÈí¼þ»òµç×Ó±í¸ñÈí¼þÖÐËùνµÄ¡¸Îļþ¡¹¡£¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡µ«£¬ÕâÀïµÄDocument¡¡Æäʵ¾ÍÊÇ×ÊÁÏ¡£µÄÈ·ÊÇ£¬²»±ØÏëµÃ¹ý·Ý¸´ÔÓ¡£ÓÐÈËÓÃdata¡¡set¡¡»òdata¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡source¡¡À´±íʾËüµÄÒâÒ壬¶¼²»´í¡£¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡Document¡¡ÔÚMFC¡¡¡¡µÄCDocument¡¡ÀïÍ·±»¾ßÌ廯¡£CDocument¡¡±¾Éí²¢ÎÞʵÎñ¹±Ï×£¬Ëü¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡Ö»ÊÇÌṩһ¸ö¿Õ¿Ç¡£µ±Ä㿪·¢×Ô¼ºµÄ³ÌÐò£¬Ó¦¸Ã´ÓCDocument¡¡ÑÜÉú³öÒ»¸öÊôÓÚ×Ô¼ºµÄ¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡Document¡¡Àà±ð£¬²¢ÇÒÔÚÀà±ðÖÐÉùÃ÷һЩ³ÉÔ±±äÁ¿£¬ÓÃÒÔ³ÐÔØ£¨ÈÝÄÉ£©Êý¾Ý¡£È»ºóÔÙ£¨ÖÁ¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡ÉÙ£©¸ÄдרߺÔðÎļþ¶Áд¶¯×÷µÄSerialize¡¡¡¡º¯Êý¡£ÊÂʵÉÏ£¬AppWizard¡¡ÎªÎÒÃǰѿտǶ¼¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡×¼±¸ºÃÁË£¬ÒÔÏÂÊÇScribble¡¡step0¡¡µÄ²¿·ÝÄÚÈÝ£º¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡class¡¡CScribbleDoc¡¡£º¡¡public¡¡CDocument¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£û¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡DECLARE_DYNCREATE£¨CScribbleDoc£©¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£¡£¡£¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡virtual¡¡void¡¡Serialize£¨CArchive&¡¡ar£©£»¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡DECLARE_MESSAGE_MAP£¨£©¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£ý£»¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡void¡¡CScribbleDoc£º£ºSerialize£¨CArchive&¡¡ar£©¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£û¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡if¡¡£¨ar¡£IsStoring£¨£©£©¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£û¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡//¡¡TODO£º¡¡add¡¡storing¡¡code¡¡here¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£ý¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡else¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£û¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡//¡¡TODO£º¡¡add¡¡loading¡¡code¡¡here¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£ý¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£ý¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ÓÉÓÚCDocument¡¡ÑÜÉú×ÔCObject£¬ËùÒÔËü¾ÍÓÐÁËCObject¡¡ËùÖ§³ÖµÄÒ»ÇÐÐÔÖÊ£¬°üÀ¨Ö´ÐС¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Ê±ÆÚÐͱðÐÅÏ¢£¨RTTI¡¡£©¡¢¶¯Ì¬Éú³É£¨Dynamic¡¡Creation¡¡£©¡¢Îļþ¶Áд£¨Serialization£©¡£ÓÖ¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ÓÉÓÚËüÒ²ÑÜÉú×ÔCCmdTarget£¬ËùÒÔËü¿ÉÒÔ½ÓÊÕÀ´×Բ˵¥»ò¹¤¾ßÀ¸µÄWM_MAND¡¡Ñ¶¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡Ï¢¡£¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡457¡¡


¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­Page¡¡520¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡µÚƪ¡¡¡¡¡¡¡¡ÉîÈë¡¡¡¡MFC¡¡¡¡³ÌʽÔOÓ‹¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡View¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡View¡¡¸ºÔðÃèÊö£¨³ÊÏÖ£©Document¡¡¡¡ÖеÄ×ÊÁÏ¡£¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡View¡¡ÔÚMFC¡¡¡¡µÄCView¡¡ÀïÍ·±»¾ßÌ廯¡£CView¡¡±¾ÉíÒàÎÞʵÎñ¹±Ï×£¬ËüÖ»ÊÇÌṩһ¸ö¿Õ¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¿Ç¡£µ±Ä㿪·¢×Ô¼ºµÄ³ÌÐò£¬Ó¦¸Ã´ÓCView¡¡ÑÜÉú³öÒ»¸öÊôÓÚ×Ô¼ºµÄView¡¡Àà±ð£¬²¢ÇÒÔÚ¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Àà±ðÖУ¨ÖÁÉÙ£©¸ÄдרߺÔðÏÔʾ×ÊÁϵÄOnDraw¡¡º¯Êý£¨Õë¶ÔÆÁÄ»£©»òOnPrint¡¡º¯Êý¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£¨Õë¶Ô´òÓ¡»ú£©¡£ÊÂʵÉÏ£¬AppWizard¡¡ÎªÎÒÃǰѿտǶ¼×¼±¸ºÃÁË£¬ÒÔÏÂÊÇScribble¡¡step0¡¡µÄ¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡²¿·ÝÄÚÈÝ£º¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡class¡¡CScribbleView¡¡£º¡¡public¡¡CView¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£û¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡DECLARE_DYNCREATE£¨CScribbleView£©¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£¡£¡£¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡virtual¡¡void¡¡OnDraw£¨CDC*¡¡pDC£©£»¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡DECLARE_MESSAGE_MAP£¨£©¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£ý£»¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡void¡¡CScribbleView£º£ºOnDraw£¨CDC*¡¡pDC£©¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£û¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡CScribbleDoc*¡¡pDoc¡¡=¡¡GetDocument£¨£©£»¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ASSERT_VALID£¨pDoc£©£»¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡//¡¡TODO£º¡¡add¡¡draw¡¡code¡¡for¡¡native¡¡data¡¡here¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£ý¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ÓÉÓÚCView¡¡ÑÜÉú×ÔCWnd£¬ËùÒÔËü¿ÉÒÔ½ÓÊÕÒ»°ãWindows¡¡ÏûÏ¢£¨ÈçWM_SIZE¡¢¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡WM_PAINT¡¡µÈµÈ£©£¬ÓÖÓÉÓÚËüÒ²ÑÜÉú×ÔCCmdTarget£¬ËùÒÔËü¿ÉÒÔ½ÓÊÕÀ´×Բ˵¥»ò¹¤¾ß¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ÁеÄWM_MAND¡¡ÏûÏ¢¡£¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ÔÚ´«Í³µÄC/SDK¡¡³ÌÐòÖУ¬µ±´°¿Úº¯ÊýÊÕµ½WM_PAINT¡¡£¬ÎÒÃÇ£¨³ÌÐòÔ±£©¾Íµ÷Óá¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡BeginPaint¡¡£¬»ñµÃÒ»¸öDevice¡¡Context¡¡£¨DC¡¡£©£¬È»ºóÔÚÕâ¸öDC¡¡ÉÏ×÷»­¡£Õâ¸öDC¡¡´ú±íÓ©¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Ä»×°Öá£ÔÚMFC¡¡ÀïÍ·£¬Ò»µ©WM_PAINT¡¡·¢Éú£¬Framework¡¡»á×Ô¶¯µ÷ÓÃOnDraw¡¡º¯Êý¡£¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡View¡¡ÊÂʵÉÏÊǸöûÓб߿òµÄ´°¿Ú¡£ÕæÕý³öÏÖʱ£¬ÆäÍâΧ»¹ÓÐÒ»¸öÓб߿òµÄ´°¿Ú£¬ÎÒÃdzơ¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ÎªFrame¡¡´°¿Ú¡£¡¡



458¡¡


¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­Page¡¡521¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡µÚ£¸Õ¡¡¡¡¡¡¡¡Document¡­View¡¡¡¡ÉîÈë̽ӑ¡¡



Document¡¡Frame¡¡£¨View¡¡Frame£©¡¡



¡¡¡¡¡¡¡¡Èç¹ûÄãµÄ³ÌÐò¹ÜÀíÁ½ÖÖ²»Í¬ÀàÐ͵Ä×ÊÁÏ£¬Æ©Èç˵һ¸öÊÇTEXT¡¡£¬Ò»¸öÊÇBITMAP¡¡£¬×÷Ϊ¡¡



¡¡¡¡¡¡¡¡Ò»Î»ÌåÌùµÄ³ÌÐòÉè¼ÆÕߣ¬ÎÒÏëÄãºÜÔ¸ÒâΪÄãµÄʹÓÃÕß¿¼ÂǶàһЩ£ºÄã¿ÉÄÜÔ¸ÒâÔÚʹÓÃÕß¡¡



¡¡¡¡¡¡¡¡²Ù×÷TEXT¡¡×ÊÁÏʱ£¬»»Ò»Ì×TEXT¡¡×¨ÊôµÄʹÓÃÕß½Ó¿Ú£¬ÔÚʹÓÃÕß²Ù×÷BITMAP¡¡×ÊÁÏʱ£¬¡¡



¡¡¡¡¡¡¡¡»»Ò»Ì×BITMAP¡¡×¨ÊôµÄʹÓÃÕß½Ó¿Ú¡£Õâ·Ý¹¤×÷ÕýÊÇÓÉFrame¡¡´°¿Ú¸ºÔ𡣡¡



¡¡¡¡¡¡¡¡Õ§¼ûÕâ¸ö¹ÛÄÎÒÏëÄã»á¾ªÑÈΪʲôUI¡¡¡¡µÄ¹ÜÀí²»ÓÉView¡¡Ö±½Ó¸ºÔð£¬È´Òª½»¸øFrame¡¡



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