📄 mfc教程_ mfc对象的创建.htm
字号:
<P align=justify>SaveModified </P></TD>
<TD vAlign=top width="43%">
<P align=justify>用来询问用户文档是否需要保存 </P></TD></TR>
<TR>
<TD vAlign=top width="37%">
<P align=justify>PreCloseFrame </P></TD>
<TD vAlign=top width="43%">
<P align=justify>在框架窗口关闭之前调用 </P></TD></TR></TBODY></TABLE>
<P align=center> </P>
<P align=justify></P>
<LI><A name=_Toc445889041></A><A name=_Toc445782444></A><A
name=_Toc452640920></A><A name=_Toc457299003></A><B>消息映射方法和标准命令消息</B>
<P></P></LI></OL>
<P
align=justify>窗口对象可以响应以“WM_”为前缀的标准Windows消息,消息处理函数名称以“ON”为前缀。不同类型的Windows窗口处理的Windows消息是有所不同的,因此,不同类型的MFC窗口实现的消息处理函数也有所不同。例如,多文档边框窗口能处理WM_MDIACTIVATE消息,其他类型窗口就不能。程序员从一定的MFC窗口派生自己的窗口类,对感兴趣的消息,覆盖基类的消息处理函数,实现自己的消息处理函数。</P>
<P
align=justify>所有的命令目标(CCmdTarger或导出类对象)可以响应命令消息,程序员可以指定应用程序对象、框架窗口对象、视对象或文档对象等来处理某条命令消息。一般地,尽量由与命令消息关系密切的对象来处理,例如隐藏/显示工具栏由框架窗口处理,打开文件由应用程序对象处理,数据变化的操作由文档对象处理。</P>
<P align=justify>对话框的控制子窗口可以响应各类通知消息。</P>
<P align=justify></P>
<P
align=justify>对于命令消息,MFC实现了一系列标准命令消息处理函数。标准命令ID在afxres.h中定义。表5-5列出了MFC标准命令的实现,从ID或者函数名可以大致地看出该函数的目的、功用,具体的实现有的后续章节会讲解,详细参见MFC技术文档。</P>
<P
align=justify>程序员可以自己来处理这些标准消息,也可以通过不同的类或从不同的类导出自己的类来处理这些消息,不过最好遵循MFC的缺省实现。比如处理ID_FILE_NEW命令,最好由CWinApp的派生类处理。</P>
<P align=justify> </P>
<P align=center>表5-5 标准命令消息处理函数</P>
<TABLE cellSpacing=1 cellPadding=7 width=504 border=1>
<TBODY>
<TR>
<TD vAlign=top width="37%" height=21>
<P align=justify>ID </P></TD>
<TD vAlign=top width="32%" height=21>
<P align=justify>函数 </P></TD>
<TD vAlign=top width="31%" height=21>
<P align=justify>实现函数的类 </P></TD></TR>
<TR>
<TD vAlign=top width="37%" height=20>
<P align=justify>ID_FILE_NEW </P></TD>
<TD vAlign=top width="32%" height=20>
<P align=justify>OnFileNew </P></TD>
<TD vAlign=top width="31%" height=20>
<P align=justify>CWinApp </P></TD></TR>
<TR>
<TD vAlign=top width="37%" height=20>
<P align=justify>ID_FILE_OPEN </P></TD>
<TD vAlign=top width="32%" height=20>
<P align=justify>OnFileOpen </P></TD>
<TD vAlign=top width="31%" height=20>
<P align=justify>CWinApp </P></TD></TR>
<TR>
<TD vAlign=top width="37%" height=20>
<P align=justify>ID_FILE_CLOSE </P></TD>
<TD vAlign=top width="32%" height=20>
<P align=justify>OnFileClose </P></TD>
<TD vAlign=top width="31%" height=20>
<P align=justify>CDocument </P></TD></TR>
<TR>
<TD vAlign=top width="37%" height=20>
<P align=justify>ID_FILE_SAVE </P></TD>
<TD vAlign=top width="32%" height=20>
<P align=justify>OnFileSave </P></TD>
<TD vAlign=top width="31%" height=20>
<P align=justify>CDocument </P></TD></TR>
<TR>
<TD vAlign=top width="37%" height=20>
<P align=justify>ID_FILE_SAVE_AS </P></TD>
<TD vAlign=top width="32%" height=20>
<P align=justify>OnFileSaveAs </P></TD>
<TD vAlign=top width="31%" height=20>
<P align=justify>CDocument </P></TD></TR>
<TR>
<TD vAlign=top width="37%" height=20>
<P align=justify>ID_FILE_SAVE_COPY_AS </P></TD>
<TD vAlign=top width="32%" height=20>
<P align=justify>OnFileSaveCopyAs </P></TD>
<TD vAlign=top width="31%" height=20>
<P align=justify>COleServerDoc </P></TD></TR>
<TR>
<TD vAlign=top width="37%" height=20>
<P align=justify>ID_FILE_UPDATE </P></TD>
<TD vAlign=top width="32%" height=20>
<P align=justify>OnUpdateDocument </P></TD>
<TD vAlign=top width="31%" height=20>
<P align=justify>COleServerDoc </P></TD></TR>
<TR>
<TD vAlign=top width="37%" height=20>
<P align=justify>ID_FILE_PAGE_SETUP </P></TD>
<TD vAlign=top width="32%" height=20>
<P align=justify>OnFilePrintSetup </P></TD>
<TD vAlign=top width="31%" height=20>
<P align=justify>CWinApp </P></TD></TR>
<TR>
<TD vAlign=top colSpan=3 height=20>
<P align=justify>转下页 </P></TD></TR></TBODY></TABLE>
<P align=justify></P>
<P align=justify> </P>
<TABLE cellSpacing=1 cellPadding=7 width=497 border=1>
<TBODY>
<TR>
<TD vAlign=top colSpan=3 height=20>
<P align=justify>续表 </P></TD></TR>
<TR>
<TD vAlign=top width="38%" height=20>
<P align=justify>ID_FILE_PRINT </P></TD>
<TD vAlign=top width="33%" height=20>
<P align=justify>OnFilePrint </P></TD>
<TD vAlign=top width="30%" height=20>
<P align=justify>CView </P></TD></TR>
<TR>
<TD vAlign=top width="38%" height=20>
<P align=justify>ID_FILE_PRINT_PREVIEW </P></TD>
<TD vAlign=top width="33%" height=20>
<P align=justify>OnFilePrintPreview </P></TD>
<TD vAlign=top width="30%" height=20>
<P align=justify>CView </P></TD></TR>
<TR>
<TD vAlign=top width="38%" height=20>
<P align=justify>ID_FILE_MRU_FILE1...FILE16 </P></TD>
<TD vAlign=top width="33%" height=20>
<P align=justify>OnUpdateRecentFileMenu </P></TD>
<TD vAlign=top width="30%" height=20>
<P align=justify>CWinApp </P></TD></TR>
<TR>
<TD vAlign=top width="38%" height=20>
<P align=justify>ID_EDIT_CLEAR </P></TD>
<TD vAlign=top width="33%" height=20>
<P></P></TD>
<TD vAlign=top width="30%" height=20>
<P align=justify>CView没有实现, </P></TD></TR>
<TR>
<TD vAlign=top width="38%" height=20>
<P align=justify>ID_EDIT_CLEAR_ALL </P></TD>
<TD vAlign=top width="33%" height=20>
<P></P></TD>
<TD vAlign=top width="30%" height=20>
<P align=justify>但是,如果有实现 </P></TD></TR>
<TR>
<TD vAlign=top width="38%" height=20>
<P align=justify>ID_EDIT_COPY </P></TD>
<TD vAlign=top width="33%" height=20>
<P></P></TD>
<TD vAlign=top width="30%" height=20>
<P align=justify>函数,就是派生类 </P></TD></TR>
<TR>
<TD vAlign=top width="38%" height=20>
<P align=justify>ID_EDIT_CUT </P></TD>
<TD vAlign=top width="33%" height=20>
<P></P></TD>
<TD vAlign=top width="30%" height=20>
<P align=justify>CEditView的 </P></TD></TR>
<TR>
<TD vAlign=top width="38%" height=20>
<P align=justify>ID_EDIT_FIND </P></TD>
<TD vAlign=top width="33%" height=20>
<P></P></TD>
<TD vAlign=top width="30%" height=20>
<P align=justify>实现函数 </P></TD></TR>
<TR>
<TD vAlign=top width="38%" height=20>
<P align=justify>ID_EDIT_PASTE_LINK </P></TD>
<TD vAlign=top width="33%" height=20>
<P></P></TD>
<TD vAlign=top width="30%" height=20>
<P></P></TD></TR>
<TR>
<TD vAlign=top width="38%" height=20>
<P align=justify>ID_EDIT_PASTE_SPECIAL </P></TD>
<TD vAlign=top width="33%" height=20>
<P></P></TD>
<TD vAlign=top width="30%" height=20>
<P></P></TD></TR>
<TR>
<TD vAlign=top width="38%" height=20>
<P align=justify>ID_EDIT_REPEAT </P></TD>
<TD vAlign=top width="33%" height=20>
<P></P></TD>
<TD vAlign=top width="30%" height=20>
<P></P></TD></TR>
<TR>
<TD vAlign=top width="38%" height=20>
<P align=justify>ID_EDIT_REPLACE </P></TD>
<TD vAlign=top width="33%" height=20>
<P></P></TD>
<TD vAlign=top width="30%" height=20>
<P></P></TD></TR>
<TR>
<TD vAlign=top width="38%" height=20>
<P align=justify>ID_EDIT_SELET_ALL </P></TD>
<TD vAlign=top width="33%" height=20>
<P></P></TD>
<TD vAlign=top width="30%" height=20>
<P></P></TD></TR>
<TR>
<TD vAlign=top width="38%" height=20>
<P align=justify>ID_EDIT_UNDO </P></TD>
<TD vAlign=top width="33%" height=20>
<P></P></TD>
<TD vAlign=top width="30%" height=20>
<P></P></TD></TR>
<TR>
<TD vAlign=top width="38%" height=20>
<P align=justify>ID_WINDOW_NEW </P></TD>
<TD vAlign=top width="33%" height=20>
<P align=justify>OnWindowNew </P></TD>
<TD vAlign=top width="30%" height=20>
<P align=justify>CMDIFrameWnd </P></TD></TR>
<TR>
<TD vAlign=top width="38%" height=20>
<P align=justify>ID_WINDOW_ARRANGE </P></TD>
<TD vAlign=top width="33%" height=20>
<P align=justify>OnMDIWindowCmd </P></TD>
<TD vAlign=top width="30%" height=20>
<P align=justify>CMDIFrameWnd </P></TD></TR>
<TR>
<TD vAlign=top width="38%" height=20>
<P align=justify>ID_WINDOW_CASCADE </P></TD>
<TD vAlign=top width="33%" height=20>
<P></P></TD>
<TD vAlign=top width="30%" height=20>
<P></P></TD></TR>
<TR>
<TD vAlign=top width="38%" height=20>
<P align=justify>ID_WINDOW_TILE_HORZ </P></TD>
<TD vAlign=top width="33%" height=20>
<P></P></TD>
<TD vAlign=top width="30%" height=20>
<P></P></TD></TR>
<TR>
<TD vAlign=top width="38%" height=20>
<P align=justify>ID_WINDOW_TILE_VERT </P></TD>
<TD vAlign=top width="33%" height=20>
<P></P></TD>
<TD vAlign=top width="30%" height=20>
<P></P></TD></TR>
<TR>
<TD vAlign=top width="38%" height=20>
<P align=justify>ID_WINDOW_SPLIT </P></TD>
<TD vAlign=top width="33%" height=20>
<P></P></TD>
<TD vAlign=top width="30%" height=20>
<P align=justify>CSplitterWnd </P></TD></TR>
<TR>
<TD vAlign=top width="38%" height=20>
<P align=justify>ID_APP_ABOUT </P></TD>
<TD vAlign=top width="33%" height=20>
<P></P></TD>
<TD vAlign=top width="30%" height=20>
<P></P></TD></TR>
<TR>
<TD vAlign=top width="38%" height=20>
<P align=justify>ID_APP_EXIT </P></TD>
<TD vAlign=top width="33%" height=20>
<P align=justify>OnAppExit </P></TD>
<TD vAlign=top width="30%" height=20>
<P align=justify>CWinApp </P></TD></TR>
<TR>
<TD vAlign=top width="38%" height=20>
<P align=justify>ID_HELP_INDEX </P></TD>
<TD vAlign=top width="33%" height=20>
<P align=justify>OnHelpIndex </P></TD>
<TD vAlign=top width="30%" height=20>
<P align=justify>CWinApp </P></TD></TR>
<TR>
<TD vAlign=top width="38%" height=20>
<P align=justify>ID_HELP_USING </P></TD>
<TD vAlign=top width="33%" height=20>
<P align=justify>OnHelpUsing </P></TD>
<TD vAlign=top width="30%" height=20>
<P align=justify>CWinApp </P></TD></TR>
<TR>
<TD vAlign=top width="38%" height=20>
<P align=justify>ID_CONTEXT_HELP </P></TD>
<TD vAlign=top width="33%" height=20>
<P align=justify>OnContextHelp </P></TD>
<TD vAlign=top width="30%" height=20>
<P align=justify>CWinApp </P></TD></TR>
<TR>
<TD vAlign=top colSpan=3 height=20>
<P align=justify>转下页 </P></TD></TR></TBODY></TABLE>
<P align=justify></P>
<P align=justify> </P>
<TABLE cellSpacing=1 cellPadding=7 width=497 border=1>
<TBODY>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -