MFC
晚霞残影邀明月
脚本丈量走过的路,测量未走的人生
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
MFC学习之路
Win32程序观念: message based,event driven,multitasking,multithreading,consolr programing MFC四大技术障碍: 面向对象观念与C++语言; Windows程序基本观念(程序进入点、消息传递、窗口函数、callback); Microsoft foundation classes本身 visual C++ 集成开发环境与...原创 2019-01-11 10:37:18 · 175 阅读 · 0 评论 -
MFC学习之路
大多数 Microsoft 基础类 (MFC) 库中的类派生自单个根处的基类的类层次结构(CObject)。所有 MFC 应用程序都具有至少两个对象: 应用程序对象派生自CWinApp,和某种形式的主窗口对象 (一般间接) 派生自CWnd。 应用程序的层次结构如下: class AFX_NOVTABLE CCmdTarget : public CObject; class CWinThread ...原创 2019-01-11 14:38:33 · 953 阅读 · 0 评论 -
MFC-消息路由
当产生消息时首先由Frame获取到传给View进行处理,如果View未进行处理,消息将传给DOC处理,DOC未进行处理,将消息传给VIEW进行处理,如果仍未进行处理,将消息传给Frame进行处理,Frame未进行处理,将消息传给Application处理。 ...原创 2019-01-17 21:13:39 · 247 阅读 · 0 评论 -
MFC实现原理基础
实现步骤: 注册窗口类 创建窗口 显示窗口 更新窗口 进行消息循环 消息转换 消息处理 代码实现: //包含Windows头文件 #include<Windows.h> //用于进行消息处理的回调函数 LRESULT CALLBACK WinProc(HWND hWNDnd, UINT uMsg, WPARAM wParam, LPARAM lParam) { switch (u...原创 2019-01-13 11:16:39 · 748 阅读 · 0 评论 -
MFC-人为实现代码
MFC基于下面两个类去实现: 应用程序类CWinApp 框架类CWndFrame 建立一个要实现的MFC头文件,并包含头文件: #include<afxwin.h> 创建两个分别基于CWinApp和CWinFrame类的派生类: class CChildApp:public CWinApp { public: virtual bool InitInatance(); } c...原创 2019-01-13 15:41:20 · 207 阅读 · 0 评论 -
MFC-消息映射
在派生框架类中的头文件声明消息映射: DECLARE_MESSAGE_MAP() 在实现的.cpp中实现对应的消息映射: BEGIN_MESSAGE_MAP(class,BasedClass) ON_WM_LBUTTONDOWN() END_MESSAGE_MAP() 在派生类声明对应的函数原型; void OnButtonDown(UINT, CPoint); 在cpp文件中实现该函数 ...原创 2019-01-13 15:59:47 · 349 阅读 · 0 评论 -
MFC-常修改编程函数
在MFC框架中有几个常用的函数需要进行修改: 在应用程序程序类CMyApp中的InitInsatance(),即整个程序的入口地址。 在框架类CMainFrame中的PreCreateWindow()创建窗口之前调用和OnCreate()函数调用之后,触发WM_CREATE,进行消息函数处理。 视图类CMyView中的OnDraw()函数,WM_PAINT消息处理函数OnPaint()内部调用O...原创 2019-01-13 16:39:29 · 193 阅读 · 0 评论 -
MFC-进程间消息传递
在涉及到将一个进程的信息发送到另一个进程的消息,并让另一个进行消息处理,通常需要涉及到进程间通讯。 分别在两个进程间定义消息; 在要接受的进程间定义消息映射; 在发送消息的进程进行消息触发; 在进行发送消息的进程首先获取到接受进程的句柄,通过定义的消息进行发送消息,在接受进程定义对应的消息映射; 在发送进程定义消息: #define MESS_1 WM_USER + 111 #def...原创 2019-01-14 11:47:49 · 1875 阅读 · 0 评论 -
MFC-画笔与画刷的使用
定义画家CClientDC 定义画笔(CPen)或画刷(CBrush) 把画笔交给画家CDC::SelectObject 代码实现: void CEventMessageView::OnDraw(CDC* pDC) { CEventMessageDoc* pDoc = GetDocument(); ASSERT_VALID(pDoc); if (!pDoc) return; CPe...原创 2019-01-16 20:14:34 · 2686 阅读 · 0 评论
分享