//{{
//}}
AFX之间的,都是由VC自己来维护的,一般自己代码不要加到其中
否则可能会被删除

解决方案 »

  1.   

    Jans(网事如风): 
    ON_COMMAND(ID_FILE_PRINT_PREVIEW, CEditView::OnFilePrintPreview)
    ON_COMMAND(ID_FILE_PRINT_PREVIEW, OnFilePrintPreview)
    都不是自己的代码
      

  2.   

    VC集成环境中,有许多向导,这些代码正是由这些向导自动生成的
    //{{AFX_MSG_MAP(CMyeditView)
    //}}AFX_MSG_MAP
      

  3.   

    1,
    BEGIN_MESSAGE_MAP(CMyeditView, CEditView)
    //{{AFX_MSG_MAP(CMyeditView)
    //}}AFX_MSG_MAP
    // Standard printing commands
    ON_COMMAND(ID_FILE_PRINT, CEditView::OnFilePrint)
    ON_COMMAND(ID_FILE_PRINT_DIRECT, CEditView::OnFilePrint)
    ON_COMMAND(ID_FILE_PRINT_PREVIEW, CEditView::OnFilePrintPreview)
    END_MESSAGE_MAP()2,
    BEGIN_MESSAGE_MAP(CMyeditView, CEditView)
    //{{AFX_MSG_MAP(CMyeditView)
    ON_COMMAND(ID_FILE_PRINT_PREVIEW, OnFilePrintPreview)
    //}}AFX_MSG_MAP
    // Standard printing commands
    ON_COMMAND(ID_FILE_PRINT, CEditView::OnFilePrint)
    ON_COMMAND(ID_FILE_PRINT_DIRECT, CEditView::OnFilePrint)
    END_MESSAGE_MAP()我是问1和2有什么不同?不是问这些代码是哪里来的?
      

  4.   

    是消息映射,如果你用过SDK,相当于代替窗口过程做的事情。就是把某个子窗口和发给他的消息联系起来。
      

  5.   

    你再看一看
    BEGIN_MESSAGE_MAP(CPrintApp, CWinApp)
    //{{AFX_MSG_MAP(CPrintApp)
    ON_COMMAND(ID_APP_ABOUT, OnAppAbout)
    // NOTE - the ClassWizard will add and remove mapping macros here.
    //    DO NOT EDIT what you see in these blocks of generated code!
    //}}AFX_MSG_MAP
    // Standard file based document commands
    ON_COMMAND(ID_FILE_NEW, CWinApp::OnFileNew)
    ON_COMMAND(ID_FILE_OPEN, CWinApp::OnFileOpen)
    // Standard print setup command
    ON_COMMAND(ID_FILE_PRINT_SETUP, CWinApp::OnFilePrintSetup)
    END_MESSAGE_MAP()
    注意Standard,如果当初设计MFC生成你说的形式也是完全可以运行的。你把后两个放进去应该也是能运行的。
      

  6.   

    简要地说,将
             ON_COMMAND(ID_FILE_PRINT, CEditView::OnFilePrint)
    ON_COMMAND(ID_FILE_PRINT_DIRECT, CEditView::OnFilePrint)
    ON_COMMAND(ID_FILE_PRINT_PREVIEW, CEditView::OnFilePrintPreview)
    放在//{{AFX_MSG_MAP(CMyeditView)
    //}}AFX_MSG_MAP
    之外可以防止通过Winzard不小心将其修改了,写成你说的形式,向导(classwinzard)很可能不能很好的工作。