
MFC学习笔记
gencheng
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
MFC中SDI程序创建流程的回顾
SDI程序创建流程的回顾 从CWinApp.InitialInstance()开始,1.首先应用程序对象创建文档模板; CSingleDocTemplate* pDocTemplate; pDocTemplate = new CSingleDocTemplate( IDR_MAINFRAME, RUNTIME_CLASS(CSDICoinDoc), R原创 2013-08-14 16:36:27 · 4806 阅读 · 0 评论 -
MFC消息处理调用过程
1.窗口创建的时候调用CWnd::CreateEx()CWnd::CreateEx()-->AfxHookWindowCreate() //安装一个WH_CBT钩子-->_AfxCbtFilterHook() //::SetWindowsHookEx(WH_CBT,_AfxCbtFilterHook, NULL, ::GetCurrentThreadId());2.钩子安...原创 2019-05-23 10:39:24 · 1070 阅读 · 0 评论 -
AFX_PMSG数据结构
AFX_PMSG数据结构 定义: typedef void (AFX_MSG_CALL CCmdTarget::*AFX_PMSG)(void); void (AFX_MSG_CALL CCmdTarget::*AFX_PMSG)(void); //AFX_MSG_CALL定义为空,只为强调是MSG_CALL void (CCmdTarget::*AFX_PMSG)(vo...原创 2019-05-23 10:37:32 · 998 阅读 · 0 评论 -
仿制金山毒霸专杀工具界面实现源码
网上有仿制金山毒霸专杀工具界面的实现方法,详见http://www.vckbase.com/module/articleContent.php?id=306但却没有完整的实现源码,这次我认真了,花了几天时间把它详细的实现出来。我把原来的金山毒霸专杀工具exe文件也打包上来了,方便你对照修改程序设计效果。如果你有兴趣也可以从它提取出原始资源文件。源码:https://download.cs...原创 2018-07-29 09:38:01 · 583 阅读 · 0 评论 -
CPaintDC类与 CClientDC类的区别
CPaintDC 与 CClientDC CPaintDC 与 CClientDC都是从CDC类继承而来。所以,这两个类的外在行为高度的抽象一致。以致于初者会误以为两者的使用可以替换(或者说MFC初学者很容易将两者的使用混淆)。事实上,MFC将两者都从CDC继承,是为了让用户在不同的场景下更加方便,高效的使用DC。如果不理解两者内部运作原理,混淆使用,就会出现屏幕绘制不能达到客户调用结果原创 2013-12-16 15:43:14 · 6488 阅读 · 1 评论 -
不用写一行代码,用MFC向导实现的文本编辑器(类似Windows下的记事本)
不用写一行代码,用MFC向导实现的文本编辑器(类似Windows下的记事本)源码下载:http://download.youkuaiyun.com/detail/gencheng/6647927 这个东西是给懒人准备的,没有写一行代码,只是用应用程序向导(AppWizard)和资源编辑器加了个菜单和图标,就完成了一个文本编辑器,它实现了“文件”菜单下的新建、打开、保存、另存为、页面设置、打印原创 2013-12-03 10:35:12 · 7497 阅读 · 4 评论 -
字体序列化保存读写
字体序列化保存读写 在实际开发中,程序中经常需要用到保存窗口大小、窗口位置、字体设置功能,以便程序在下次运行后,自动恢复上次的用户的使用设置(比如窗口的大小、位置、字体等等),这样做会给用户带来良好的软件操作体验,提高用户的使用满意度。 软件配置的读取,可以采用多种方法实现:数据库、INI文件、注册表等都可以实现。不过,在VC开发中,使用MFC的序列化机制大概是所有方法中最方便、最好用原创 2013-11-25 17:02:48 · 2309 阅读 · 0 评论 -
AppWizard向导产生的MFC框架中文件菜单项动作的缺省处理行为
AppWizard向导产生的MFC框架中文件菜单项动作的缺省处理行为 可能大家用AppWizard向导后会有一个疑惑,AppWizard向导产生的菜单,比如“文件”菜单,我们没写一行代码,但却自动实现了相应的功能,它是怎么实现的?我们只能知道一个常识:一定是MFC框架在幕后做了一些事情,所以才会实现这些功能,这些功能自己是不会从天上掉下来的。 你应该知道,AppWizard向导产生原创 2013-11-15 11:35:32 · 2336 阅读 · 0 评论 -
MFC Windows 编程符号
MFC Windows 编程符号 这些符号也是 MFC 支持文件的组成部分,但它们支持标准的 Windows 应用程序功能和操作。 这些符号主要用于菜单。 当在菜单编辑器中处理菜单时,这些符号将出现在与公共菜单命令关联的“属性”窗口中。 例如,如果应用程序具有带“退出”命令的“文件”菜单,该命令将与“属性”窗口中的符号 ID_APP_EXIT 关联。ID_APP_ABOUTI原创 2013-11-15 16:31:04 · 2288 阅读 · 0 评论 -
查找(替换)对话框在VC中的使用
查找(替换)对话框在VC中的使用1.弹出查找(替换)对话框 CString findString; findReplaceDialog = new CFindReplaceDialog; findReplaceDialog->Create( TRUE, findString, "" ); 2.如何实现在点击上图对话框中的“查找下一个”原创 2013-10-28 15:06:57 · 1973 阅读 · 0 评论 -
MFC消息处理宏和消息处理函数原型
ON_COMMAND(, )afx_msg void memberFxn();ON_COMMAND_EX(, )afx_msg BOOL memberFxn(UINT);ON_COMMAND_EX_RANGE(, , )afx_msg BOOL memberFxn(UINT);ON_COMMAND_RANGE(, , )afx_msg void原创 2013-10-15 09:15:59 · 1876 阅读 · 0 评论 -
MFC框架中消失的WinMain()
学过一段时间的MFC之后,很多人大概都有一个疑问:在MFC中,WinMain()哪去了?因为任何一个使用过Win32 SDK编程的人都知道,WinMain()函数是Win32程序开始的入口点,可是在MFC的框架使用中,一般我们只知道从CWinApp类继承得到一个新类,然后重写InitInstance()虚函数,程序框架就可以运行了。哪么,在MFC中,WinMain()倒底去哪了? 似乎微软就原创 2013-10-13 09:31:18 · 8682 阅读 · 0 评论 -
MFC版的Hello World
MFC版的Hello World 使用MFC类库写个Hello示例程序比直接用Win32 API写要简单的多了。因为MFC用几个类封装了应用程序的创建,消息循环等等东东。 闲话少说,先给来一个最简单的MFC版Hello World.//Hello.h#ifndef Hello1_H_#define Hello1_H_ #include // Dec原创 2013-08-20 10:39:46 · 2816 阅读 · 0 评论 -
MFC基础类源码CPP实现文件
WinMain.CPP---->AfxWinMain() //近似可认为是WinMain()函数的入口VIEWCORE.CPP---->CViewDOCCORE.CPP---->CDocumentWINFRM.CPP---->CFrameWndDOCTEMPL.CPP--->CDocTemplateDOCSINGL.CPP--->CSingleDocTemplateD原创 2013-08-14 16:34:42 · 2803 阅读 · 1 评论 -
三大MSG宏
//afxwin.hstruct AFX_MSGMAP{ const AFX_MSGMAP* (PASCAL* pfnGetBaseMap)(); const AFX_MSGMAP_ENTRY* lpEntries;};struct AFX_MSGMAP_ENTRY{ UINT nMessage; // windows message UINT ...原创 2019-05-23 10:41:05 · 397 阅读 · 0 评论