信息科技2章Windows应用程序的类封装.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Visual C++程序设计教程-第1章 Visual C++程序设计教程 主编:梁建武 Windows 程序设计 主讲:刘永伟 Liuyw@sjzue.edu.cn 第2章 Windows应用程序的类封装 本章主要内容 模仿MFC对框架应用程序类(CWinApp)、窗口类(CFrameWnd)、消息处理类(CCmdTarget)进行封装 模拟MFC中类的封装 (1) 把关于窗口的操作封装到FrameWnd类中--------窗口类 (2) 把关于主函数WinMain封装为WinApp类---------应用程序类 窗口类 class FrameWnd { public: HWND m_hWnd; void DesignWindow(); void RegisterWindow(); void Create(LPCTSTR classname,LPCTSTR title); void ShowWindow() ; void UpdateWindow(); private: WNDCLASS w; }; 应用程序类 class WinApp { public: FrameWnd* m_pMainWnd; void InitInstance(); //创建窗口 void Run(); //消息循环 ~WinApp(); }; 封装后WinMain的调用 WinApp theApp; int WINAPI WinMain(...) { theApp.InitInstance(); theApp.Run(); return 0; } 改进(1) 解耦合 WinApp theApp; int WINAPI WinMain(...) { WinApp*p= GetApp(); p-InitInstance(); p-Run(); } 改进(2) 灵活性 -- C++的派生(虚函数+重写) 改进(3) 把消息处理封装到CCmdTarget类中 class CmdTarget { public: int WindowProc(...) { switch(uMsg) { case WM_LBUTTONDOWN: OnLButtonDown(...); break; } return 0; } void OnLButtonDown(...); }; * * 在第1章中,使用Windows API写了一个程序,此程序有以下特点: (1) 以WinMain作为入口 (2) 主程序中,分为创建窗口和消息循环两部分 (3) 创建窗口又分为 设计窗口类/注册窗口类/创建窗口/显示及更新窗口 四个步骤 (4) 在设计窗口类时,需要把定义的某回调函数作为窗口处理函数 微软的AFX小组用面向对象的思想把API函数分类封装成各个C++类,并采用了类的继承技术,在基类上派生出子类。 * *

文档评论(0)

新起点 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档