logo资料库

VC++MFC编程实例.ppt

第1页 / 共138页
第2页 / 共138页
第3页 / 共138页
第4页 / 共138页
第5页 / 共138页
第6页 / 共138页
第7页 / 共138页
第8页 / 共138页
资料共138页,剩余部分请下载后查看
第10章 Visual C++编程实例 第10章 Visual C++编程实例 10.1 MFC编程流程 10.2 常用MFC类和消息处理 10.3 对话框的应用 10.4 菜 单 的 应 用 10.5 工具栏应用
第10章 Visual C++编程实例 10.1 MFC编程流程 在普通的C/C++程序中,可以看到程序从main函数 开始到结束的所有代码,但在Visual C++中MFC封装了 一部分类,同时也隐藏了一部分代码,因此我们看不 到源程序的所有代码,例如从项目的所有源文件中找 不到main函数。 基本对话框的MFC程序流程图如图10-1所示。
第10章 Visual C++编程实例 程序开始 生成 CwinApp 的一个实例, 初始化全局对象 WindMain () 的函数体 程序结束 图 10-1 AfxWinMain() 的函数体 初始化句柄 退出句柄 消息循环 退出句柄
第10章 Visual C++编程实例 一个MFC程序运行的一般过程如下: (1) 生成CwinApp的一个实例(调用CwinApp的构造函数), 初始化全局对象; (2) Win32入口程序函数WinMain调用函数AfxWinMain; (3) AfxWinMain调用函数CwinApp的成员函数InitInstance; (4) AfxWinMain调用函数CwinApp的成员函数Run; (5) AfxWinMain函数返回到WinMain,WimMain结束,程 序结束。
第10章 Visual C++编程实例 例10-1 吹泡泡程序。每当用户在窗口客户区中按 下鼠标左键时即可产生一个泡泡(彩色圆形)。 设计思路:显示一个泡泡所需的数据包括其位置 和大小,在MFC中可用其包含矩形表示。可设置一数 组,每当用户按下鼠标左键时,就产生一个泡泡的数 据并存入数组中。最后,由框架窗口类的OnPaint()函 数显示所有的泡泡。
第10章 Visual C++编程实例 #include #define MAX_BUBBLE 250 class CMyWnd:public CFrameWnd { CRect m_rectBubble[MAX_BUBBLE]; int m_nBubbleCount; public: CMyWnd() {m_nBubbleCount=0;}
第10章 Visual C++编程实例 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()
第10章 Visual C++编程实例 //框架窗口类的成员函数 void CMyWnd::OnLButtonDown(UINT nFlags,CPoint point) { if(m_nBubbleCount
分享到:
收藏