MFC设计模式全解.doc

  1. 1、本文档共25页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
MFC设计模式全解

菜单应用 1.系统菜单中添加菜单项 步骤: 新建一个机遇对话框的应用 在对话框类中定义一个菜单指针m_pMenu ,用于指向系统菜单 主要代码 在对话框初始化时(OnInitDialog( )函数中)获取系统菜单指针,想系统菜单中添加菜单项,代码如下: m_pMenu = GetSystemMenu(FALSE); //如果是添加的菜单项 m_pMenu-AppendMenu(MF_STRING,IDD_FORMS_DIALOG,系統菜單);//弹出消息提示 响应菜单项的命令消息,在对话框的OnSysCommand函数中添加消息处理代码 if ((nID ) == IDM_ABOUTBOX) { CAboutDlg dlgAbout; dlgAbout.DoModal(); } else if(nID == IDD_FORMS_DIALOG) { MessageBox(系統菜單,提示,MB_OK|MB_ICONINFORMATION); } else { CDialog::OnSysCommand(nID, lParam); } 键盘消息处理(工程:Ch5Demol) 响应键盘消息(WM_KEYDOWN,WM_KEYUP) 显示字符(WM_CHAR) 显示插入符(WM_SETFOCUS) 常用虚拟键码机器对应的按键 ASCII码 按键消息处理 例1:同时按下Ctrl和F8,弹出对话框 添加ON_WM_KEYDOWN消息映射宏和OnKeyDown消息处理函数 (1)定义: (2)初始化: (3)在WM_KEYDOWN消息响应函数中,实现按键状态的赋值,并在满足条件的情况下,弹出提示对话框。 (4)在WM_KEYUP消息响应函数中,实现按键状态的赋值 例2:用户通过键盘输入字符,在窗口显示,如果按下“Enter”键,换行输出。 (1)定义 (2)初始化 (3)在WM_CHAR消息响应函数OnChar中,实现字符的显示以及换行 例3:显示插入符 WM_SETFOCUS 捕获窗口消息 增加ON_WM_SETFOCUS消息映射宏和OnSetFocus消息处理函数 在WM_SETFOCUS消息响应函数OnSetFocus中,实现插入符的创建和显示 修改OnChar函数,在适当的时机显示、隐藏插入符 鼠标消息处理(工程:Ch5Demo2) 消息处理函数OnLButtonDown 例:当用户在视图窗口中按下鼠标左键,拖动鼠标时,在窗口中绘制一个随鼠标位置变化的矩阵;当释放鼠标键时,停止矩形绘制。 (1)定义 (2)初始化 (3)实现画矩阵的操作 (4)按下鼠标是变量设计 (5)记录鼠标移动时的变量并画矩形 (6)鼠标放开时的操作 例2.绘制矩形时,显示十字光标 在OnMouseMove函数中实现新的光标的创建与显示即可。 创建光标 例3:鼠标范围限制在屏幕内 标准控件 控件属性 例: 按钮的成员变量和消息响应函数 初始化: “重置”按钮的状态设置在对话框初始化函数OnInitDialog中实现 (2)“提交”按钮响应函数中,实现弹出对话框,显示用户设定信息 (3)“重置”按钮响应函数中,实现恢复对话框初始时的状态 创建控件 创建静态控件 (1)通过Create函数动态创建 (2)使用对话框资源编辑器 静态控件类CStatic 编辑框控件属性 编辑控件类CEdit 编辑控件通知消息 编辑框使用 可以连续添加姓名和学号信息(工程:Ch6Dome1)

文档评论(0)

ee88870 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档