你再看一看 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生成你说的形式也是完全可以运行的。你把后两个放进去应该也是能运行的。
ON_COMMAND(ID_FILE_PRINT_PREVIEW, CEditView::OnFilePrintPreview)
ON_COMMAND(ID_FILE_PRINT_PREVIEW, OnFilePrintPreview)
都不是自己的代码
//{{AFX_MSG_MAP(CMyeditView)
//}}AFX_MSG_MAP
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有什么不同?不是问这些代码是哪里来的?
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生成你说的形式也是完全可以运行的。你把后两个放进去应该也是能运行的。
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)很可能不能很好的工作。