- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第10章 Visual C++编程实例 10.1 MFC编程流程 10.2 常用MFC类和消息处理 10.3 对话框的应用 10.4 菜 单 的 应 用 10.5 工具栏应用 10.1 MFC编程流程 在普通的C/C++程序中,可以看到程序从main函数开始到结束的所有代码,但在Visual C++中MFC封装了一部分类,同时也隐藏了一部分代码,因此我们看不到源程序的所有代码,例如从项目的所有源文件中找不到main函数。 基本对话框的MFC程序流程图如图10-1所示。 一个MFC程序运行的一般过程如下: (1) 生成CwinApp的一个实例(调用CwinApp的构造函数),初始化全局对象; (2) Win32入口程序函数WinMain调用函数AfxWinMain; (3) AfxWinMain调用函数CwinApp的成员函数InitInstance; (4) AfxWinMain调用函数CwinApp的成员函数Run; (5) AfxWinMain函数返回到WinMain,WimMain结束,程序结束。 例10-1 吹泡泡程序。每当用户在窗口客户区中按下鼠标左键时即可产生一个泡泡(彩色圆形)。 设计思路:显示一个泡泡所需的数据包括其位置和大小,在MFC中可用其包含矩形表示。可设置一数组,每当用户按下鼠标左键时,就产生一个泡泡的数据并存入数组中。最后,由框架窗口类的OnPaint()函数显示所有的泡泡。 #includeafxwin.h #define MAX_BUBBLE 250 class CMyWnd:public CFrameWnd { CRect m_rectBubble[MAX_BUBBLE]; int m_nBubbleCount; public: CMyWnd() {m_nBubbleCount=0;} protected: afx_msg void OnLButtonDown(UINT nFlags,CPoint point); afx_msg void OnPaint(); DECLARE_MESSAGE_MAP() }; ?//消息映射 BEGIN_MESSAGE_MAP(CMyWnd,CFrameWnd) ON_WM_LBUTTONDOWN() ON_WM_PAINT() END_MESSAGE_MAP() //框架窗口类的成员函数 void CMyWnd::OnLButtonDown(UINT nFlags,CPoint point) { if(m_nBubbleCountMAX_BUBBLE) { int r=rand()%50+10; CRect rect(point.x-r,point.y-r,point.x+r,point.y+r); m_rectBubble[m_nBubbleCount]=rect; m_nBubbleCount++; InvalidateRect(rect,FALSE); } } void CMyWnd::OnPaint() { CPaintDC dc(this); CBrush brushNew; CPen penNew; brushNew.CreateSolidBrush(RGB(rand()%255,rand()%255,rand()%255)); penNew.CreatePen(PS_SOLID,1,RGB(255,0,0)); dc.SelectObject(brushNew); dc.SelectObject(penNew); for(int i=0;im_nBubbleCount;i++) dc.Ellipse(m_rectBubble[i]); } ?//应用程序类 class CMyApp:public CWinApp { public: BOOL InitInstance(); }; BOOL CMyApp::InitInstance() { CMyWnd *pFrame=new CMyWnd; pFrame-Create(0,_T(吹彩色泡泡)); pFrame-ShowWindow(m_nCmdShow); this-m_pMainWnd=p
您可能关注的文档
最近下载
- 光伏电站运行常见故障及技术解决方案.pdf VIP
- 军队文职考试《公共科目》试题与参考答案(2024年).docx VIP
- 生成式AI在小学英语课堂中的应用:教师教学决策优化研究教学研究课题报告.docx
- 初二物理导学案-全一册.pdf VIP
- 邮政企业快递企业安全生产重大事故隐患判定标准解读.pdf VIP
- 人民大2023学术规范和论文写作PPT第2章 选:论文选题与研究设计.pptx VIP
- 2025年中国食品级碳酸氢钠数据监测报告.docx
- 能源与动力工程研究教授——程林同志事迹材料— .doc VIP
- 高中物理竞赛-话题5:多质点在动态多边形顶点的相遇问题和多解问题.doc VIP
- 《提升基层干部管理能力》课件.ppt VIP
文档评论(0)