使用ClassWizard类向导.ppt

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

ClassWizard 类向导;一、概述 利用MFC应用程序向导生成应用程序框架后,需要为 程序添加消息处理成员函数和对话框控件的成员变 量,有时还需要为程序添加新的MFC派生类,那么这些可 以通过ClassWizard类向导来实现。 MFC ClassWizard类向导根据程序开发人员的要求以 半自动化的方式添加程序代码,也是进行MFC应用程序设 计时一个必不可少的交互式工具。 ;MFC管理类的方式;二、ClassWizard的启动 只有在打开或创建了一个项目后,在View主菜单中才会出 现ClassWizard类向导菜单项。 ;处理消息映射,为消息 添加或删除处理函数;消息映射;消息发送和消息处理的一般过程为: 消息发送——消息映射——消息处理。 ; 鼠标事件和鼠标消息;●鼠标事件的处理 MFC把鼠标消息处理函数封装在CView类中。;参数nFlags用来描述鼠标按钮和键盘上Shift键和Ctrl键的组合状态。其取值如下表: ;【例1】在视图窗口单击鼠标左键弹出一个“Hello, the world!”消息框。;在头文件EXAMPLE1View.h中声明消息处理函数OnLButtonDown: protected: //{{AFX_MSG(CEXAMPLE1View) afx_msg void OnLButtonDown(UINT nFlags, CPoint point); //}}AFX_MSG DECLARE_MESSAGE_MAP( ) ;在实现文件EXAMPLE1View.cpp消息映射入口处,添加了相应的映射宏: BEGIN_MESSAGE_MAP(CEXAMPLE1View, CView) //{{AFX_MSG_MAP(CEXAMPLE1View) ON_WM_LBUTTONDOWN( ) //}}AFX_MSG_MAP // Standard printing commands …… END_MESSAGE_MAP();在实现文件EXAMPLE1View.cpp中写入一个控的消息处理函数的框架,以便开发人员填入具体的程序代码: void CEXAMPLE1View::OnLButtonDown(UINT nFlags, CPoint point) { // TODO: Add your message handler code here and/or call default CView::OnLButtonDown(nFlags, point); };【EXAMPLE 2】在视图窗口跟踪鼠标的当前位置,并且在视图的客户区显示鼠标的坐标值。 ;2. 窗口事件和窗口消息;【EXAMPLE 3 】给一个窗口程序添加关闭和打开时的消息,使之能在打开和关闭时有小消息框提示。 ;【例4】在视图窗口单击鼠标左键或右键分别弹出不同的消息框,显示单击鼠标左键或右键的次数。;【例5】在视图窗口单击鼠标左键弹出一个对话框,对话框。;关联对话框控件的成员变量;三、案例演示;案例分析及设计步骤: 1、利用MFC应用程序向导生成单文档(Single Document)应用程序框架。;2、利用资源编辑器添加资源:在本案例中是一个对话框(鼠标单击左键后弹出这个对话框),在对话框上要添加四个按钮(Button)和一个编辑框(Edit)。;(3)拖入控件,设计对话框。;控件与关联变量之间的数据内容传递,UpdateData( )函数。 其原型如下: BOOL UpdateData ( BOOL b =TRUE ); 当 b 赋值为TRUE时,将控件的内容传送给对应的成员变量,当 b 赋值为FALSE时,将成员变量的值传送给控件并更新控件的显示。 ;3、通过ClassWizard类向导创建新类,添加关联对话框控件的成员变量。;4、打开TestView.cpp文件,在CTestView::OnDraw(CDC* pDC)函数中添加代码,如下(红色代码为添加代码): void CTestView::OnDraw(CDC* pDC) { CTestDoc* pDoc = GetDocument(); ASSERT_VALID(pDoc); // TODO: add draw code for native data here pDC-TextOut(10,10,单击鼠标左键激活弹出对话框!); };5、通过ClassWizard类向导进行消息映射,主要包括:在视图窗口左键单击(WM_LBUTTONDOWN)、在对话框上单击四个按钮(BN_CLICKED)。;6、编写具体的函数代码。;void CShowDlg

文档评论(0)

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

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

版权声明书
用户编号:6111134150000003

1亿VIP精品文档

相关文档