- 浏览: 196367 次
- 性别:
- 来自: 长沙
文章分类
最新评论
-
在世界的中心呼喚愛:
思路很好
连连看全局消除算法 -
tianaozhu:
请问,我修改了词库和源文件怎么就不好用了, 我源文件是: My ...
自己动手开发翻译软件(Java版) -
Arlrn:
博主你好,最近在学习排序算法,看了你的博客,你的直接插入排序, ...
各种排序算法的实现及其比较 -
sharong:
有一个明显错误,很显然冒泡排序的时间复杂度是O(n^2)
各种排序算法的实现及其比较 -
julydave:
希尔排序不太对吧。。
各种排序算法的实现及其比较
之前也学过一点MFC的知识,但因很久没去碰就都忘 得差不多了。于是我想再从头开始,系统的再学一遍,并同步这个学习笔记。与大家共享,共同学习MFC。学习教材主要是清华大学出版的《MFC Windows 应用程序设计(第二版)》。当然也会参考一些其它的资料……
该书的目录如下:
第1章 Windows应用程序基础知识 1.1 Windows应用程序的基本概念 1.2 Windows应用程序的结构 1.3 用函数封装Windows程序 1.4 窗口函数的另一种结构 小结 练习题 思考题 第2章 Windows应用程序的类封装 2.1 应用程序主函数的C++类封装 2.2 派生类的应用 2.3 窗口函数的封装--消息映射 小结 练习题 思考题 第3章 MFC应用程序框架 3.1 早期的应用程序框架及其MFC类 3.2 最简单的MFC程序实例 3.3 应用程序的文档/视图结构 3.4 文档类CDocument的派生类 3.5 视图类CView的派生类 3.6 窗口框架类CFrameWnd的派生类 3.7 文档模板类CDocTemplate 3.8 应用程序类的派生类 3.9 MFC文档/视图应用程序框架中各个对象的关系 3.10 对象的动态创建 小结 练习题 思考题 第4章 图形 第5章 MFC的通用类 第6章 Windows应用程序界面的设计 第7章 鼠标和键盘 第8章 资源 第9章 MFC的文件处理机制 第10章 控件 第11章 对话框 第12章 进程与线程的管理 第13章 动态链接库及其使用 第14章 组件对象模型基础 第15章 ActiveX应用基础 第16章 用MFC设计数据库应用程序 第17章 异常和异常处理 附录A 数据类型与Windows句柄 附录B 标识符的匈牙利记法 附录C MFC的消息映射 附录D 文档/视图框架的补充内容 附录E 多文档/视图框架的一个实例 附录F 类信息表与CObject类 附录G Visual C++中文件类型小结 参考文献 第1章 Windows应用程序基础知识 1.1 Windows应用程序的基本概念 1.2 Windows应用程序的结构 1.3 用函数封装Windows程序 1.4 窗口函数的另一种结构 小结 练习题 思考题 第2章 Windows应用程序的类封装 2.1 应用程序主函数的C++类封装 2.2 派生类的应用 2.3 窗口函数的封装--消息映射 小结 练习题 思考题 第3章 MFC应用程序框架 3.1 早期的应用程序框架及其MFC类 3.2 最简单的MFC程序实例 3.3 应用程序的文档/视图结构 3.4 文档类CDocument的派生类 3.5 视图类CView的派生类 3.6 窗口框架类CFrameWnd的派生类 3.7 文档模板类CDocTemplate 3.8 应用程序类的派生类 3.9 MFC文档/视图应用程序框架中各个对象的关系 3.10 对象的动态创建 小结 练习题 思考题 第4章 图形 第5章 MFC的通用类 第6章 Windows应用程序界面的设计 第7章 鼠标和键盘 第8章 资源 第9章 MFC的文件处理机制 第10章 控件 第11章 对话框 第12章 进程与线程的管理 第13章 动态链接库及其使用 第14章 组件对象模型基础 第15章 ActiveX应用基础 第16章 用MFC设计数据库应用程序 第17章 异常和异常处理 附录A 数据类型与Windows句柄 附录B 标识符的匈牙利记法 附录C MFC的消息映射 附录D 文档/视图框架的补充内容 附录E 多文档/视图框架的一个实例 附录F 类信息表与CObject类 附录G Visual C++中文件类型小结 参考文献
在此列出,仅做参考。
本文是个开头篇,因此从最简单的Windows程序设计说起。每个笔记都是代码占主要部分。。其中的细节大都以注释的方式给出。
#include<windows.h> //声明窗口函数原型 LRESULT CALLBACK WndProc(HWND,UINT,WPARAM,LPARAM); //------------------------------------------------------------------- //主函数,程序的入口 int WINAPI WinMain(HINSTANCE hInstance, //当前应用程序实例的句柄 HINSTANCE PreInstance, //前一个应用程序实例句柄 LPSTR lpCmdLine, //指向本程序命令行的指针 int nCmdShow) //决定应用程序窗口显示方式的标志,下面会讲 { HWND hwnd; //窗口句柄,用来把持整个窗口 MSG msg; //窗口消息 char lpszClassName[]="窗口"; //窗口类型名,给下面的用,可以直接写在下面 WNDCLASS wc; //窗口名,注册这个窗口时用到 wc.style=0; //窗口样式,一般设置为0 wc.lpfnWndProc=WndProc; //指向窗口函数的指针 wc.cbClsExtra=0; //一般设为0 wc.cbWndExtra=0; //一般设为0 wc.hInstance=hInstance; //定义窗口应用程序的实例句柄 wc.hIcon=LoadIcon(NULL,IDI_APPLICATION); //加载窗口的图标 wc.hCursor=LoadCursor(NULL,IDC_ARROW); //加载光标 wc.hbrBackground=(HBRUSH)GetStockObject(WHITE_BRUSH); //设置窗口背景颜色 wc.lpszMenuName=NULL; //窗口的菜单资源名 wc.lpszClassName=lpszClassName; //窗口类型名 RegisterClass(&wc); //注册这个窗口 //创建窗口 hwnd=CreateWindow( lpszClassName, //窗口类型名 "Windows", //窗口实例标题 WS_OVERLAPPEDWINDOW, //窗口风格 120,50,800,600, //窗口左上x值,左上y值,宽度和高度 NULL, //父窗口的句柄 NULL, //主菜单的句柄 hInstance, //应用程序实例句柄 NULL); //无参数,设为NULL ShowWindow(hwnd,nCmdShow); //显示窗口 UpdateWindow(hwnd); //更新窗口 //用一个死循环来等待并读取消息。当读不到时,GetMessage函数不会返回。 while(GetMessage(&msg,NULL,0,0)) { TranslateMessage(&msg); //解析讲到的事件消息 DispatchMessage(&msg); //分发事件消息,由下面的WndProc函数处理 } return msg.wParam; } //------------------------------------------------------------------ //处理消息的窗口函数 LRESULT CALLBACK WndProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) { switch(message) { case WM_LBUTTONDOWN: { MessageBeep(0); //按下左键时就beep一声 } break; case WM_DESTROY: PostQuitMessage(0); //当上面的while循环遇到这个消息时就会中止,因为它让GetMessage返回0 break; default: return DefWindowProc(hwnd,message,wParam,lParam); //其它的事件交给默认的窗口过程来处理 } return 0; }
得到了最简单的一个窗口 ,如下图:
WinMain里面的第四个参数在MSDN里面有如下说明:
写Win32窗口程序时,上面这段代码可以直接拷过去用,之后再在这基础上做些增加、修改就是一个新的窗口应用程序了。
发表评论
-
连连看全局消除算法
2012-03-08 01:48 4387好久没写技术博客了。I ... -
object-c笔记一
2011-07-22 11:03 888(本笔记只是简单的记录,只给自己看) 接口的定义: ... -
VC2010中C++的右值引用新特性
2011-05-27 13:37 1509// RightValue.cpp : Defines ... -
linux下用命令编译/调试C++程序
2011-04-01 14:17 3035先安装gcc : sudo apt-get insta ... -
对Windows程序中设备上下文DC(device context)的理解(转)
2010-11-08 00:58 1648对Windows程序中设备上 ... -
MFC学习笔记(九)
2010-10-30 01:47 1382前面已经讲了够多的基础性的东西了,还有一些,但我想还是之后遇到 ... -
MFC学习笔记(八)
2010-10-30 00:55 1045MFC把早期的窗口类的功能分成三个部分:数据存储、管理部分,数 ... -
MFC学习笔记(七)
2010-10-28 01:29 969创建一个普通的Win32 Application,加上一个.c ... -
MFC学习笔记(六)
2010-10-28 01:16 1106先来了解几个类 1、CObject类 有相当一部分类的基 ... -
MFC学习笔记(五)
2010-10-27 01:55 1499早期的MFC应用程序框架结构由两个对象组成:应用程序类CWin ... -
MFC学习笔记(四)
2010-10-27 00:28 1204前面写了那么多代码,但很多东西都是固定的,我们需要写的主要是消 ... -
MFC学习笔记(三)
2010-10-26 14:54 1175这一次修改事件的处理函数,当鼠标左键按下时,可在窗口的用户区显 ... -
MFC学习笔记(二)
2010-10-26 14:31 1011上一篇写的是一个单窗口的程序,这一次写一个多窗口的程序,第一个 ... -
高质量C++/C编程学习笔记(七)----- 其它
2010-10-24 10:29 8011、继承不要随便使用, ... -
高质量C++/C编程学习笔记(六)----- 构造 析构 赋值函数
2010-10-24 10:15 8371、当创建一个类时,C++ ... -
高质量C++/C编程学习笔记(五)----- 基础函数的高级特性
2010-10-24 02:13 11261、重载: 只能靠参数而不能靠返回值类型的不同来区分重载函 ... -
高质量C++/C编程学习笔记(四)----- 内存管理(2)
2010-10-22 00:46 11355、用指针参数传递内存 ... -
高质量C++/C编程学习笔记(三)----- 内存管理(1)
2010-10-22 00:17 11831、 三种内存分配方式 ... -
高质量C++/C编程学习笔记(二)----- 基础
2010-10-21 23:10 9431、在函数体的“入口处” ,用断言对参数的有效性进行检查。断言 ... -
高质量C++/C编程学习笔记(一)----- 入门
2010-10-21 01:05 1279学了这么久的C/C++,在 ...
相关推荐
MFC学习笔记(onenote格式),一个朋友参加MFC培训,其教师在讲课过程中做的学习日记。图文并茂,是初学者很好的学习资料。
MFC本身也是基于Windows API构建的,因此理解Windows API对于深入学习MFC至关重要。 ### 内存管理 C++中的内存管理是一个关键且复杂的话题。`new`和`delete`是C++中用于动态分配和释放内存的关键字。`new`操作符...
**MFC 学习笔记** MFC(Microsoft Foundation Classes)是微软开发的一种C++类库,用于构建Windows应用程序。它提供了面向对象的编程接口,使得开发者可以更容易地使用Windows API。MFC的主要目标是简化Windows应用...
MFC 菜单操作学习笔记 本文是关于 MFC 菜单操作学习笔记 的资源,旨在帮助开发者学习和掌握 MFC 菜单操作的技术。下面是对该资源的详细解释和知识点总结。 一、创建菜单 MFC 菜单操作学习笔记 中提供了两种创建...
《MFC学习笔记:腾讯游戏连连看外挂制作(一)》 在本文中,我们将深入探讨如何使用Microsoft Foundation Classes (MFC) 来开发腾讯游戏连连看的外挂程序。MFC是微软提供的一套C++库,用于简化Windows应用程序的开发...
在C++编程中,MFC(Microsoft ...以上是C++和MFC学习笔记中涉及的关键知识点,涵盖了窗口、绘图、异常处理、消息循环、对话框以及资源管理等多个方面。理解并熟练运用这些概念对于深入掌握C++和MFC编程至关重要。
总的来说,这些笔记覆盖了MFC基础的用户交互、数据管理、窗口更新、定时操作和DLL管理等方面,对于初学者来说是一份很好的学习资源。通过理解和实践这些函数,开发者可以更好地掌握MFC编程,并进一步构建复杂的...
### 深入浅出MFC学习笔记:关键知识点解析 #### 一、Windows消息机制与回调函数 在深入探讨MFC之前,我们先来理解Windows操作系统中的消息机制及其核心组成部分——回调函数。 ##### 1.1 Windows消息机制概述 ...
本人从零开始学C++/MFC的时候,积累和整理的学习笔记,其中有大部分常见问题和处理办法,看过很过帖子,也查过很多资料,最终把他们记录下来。 Demo内容: ★ ::OnTimer OnTimer()函数用于实现定时控制功能,定时...
在本篇MFC学习笔记中,我们将深入探讨如何使用MFC AppWizard创建不同类型的项目,以及这些项目中的关键类和文件。 首先,我们来看MFC AppWizard如何生成应用程序。AppWizard是MFC提供的一个向导工具,可以根据选择...
【MFC学习笔记1】 MFC(Microsoft Foundation Classes)是微软提供的一套C++库,用于简化Windows应用程序的开发。本笔记将重点介绍基于对话框的MFC应用程序开发。 7.16 基于对话框编程 对话框在Windows程序中扮演...
《Visual C++ MFC 学习笔记》 学习Visual C++ MFC,首先需要具备扎实的C/C++基础知识。这是入门VC开发的基石,因为MFC(Microsoft Foundation Classes)是基于C++的一个类库,对C++的掌握程度直接影响到理解和使用...
在这个“MFC学习笔记——销售系统”案例中,我们将探讨如何利用MFC来开发一个简单的销售管理系统。 首先,`juiceSale.sln`文件是Visual Studio的解决方案文件,包含了项目的所有配置和依赖项。通过打开这个文件,...
MFC,全称为Microsoft Foundation Classes,是微软提供的...在学习过程中,你将学会如何创建一个完整的MFC应用程序,包括从创建项目、设计用户界面、处理消息到实现功能模块,从而具备独立开发Windows桌面应用的能力。
《Visual C++/MFC学习笔记》是一份深入探讨C++和Microsoft Foundation Class (MFC)库的文档,旨在帮助读者掌握使用Visual C++开发Windows应用程序的技能。这份笔记主要分为六个章节,覆盖了从入门到高级的多个主题。...
一、MFC基础 1. MFC架构:MFC由几个关键部分组成,包括框架类、文档/视图结构、对话框、控件、GDI(图形设备接口)以及ATL(Active Template Library)等。其中,框架类如CWinApp、CDocument、CView等,提供了应用...
深入浅出MFC读书笔记2是对MFC框架的进一步学习和理解,主要涵盖了MFC的基础概念、类库结构以及程序构建的关键要素。MFC(Microsoft Foundation Classes)是微软为Windows平台开发的应用程序提供的一种类库,它基于...
MFC(Microsoft Foundation...总之,MFC学习代码和笔记对于希望深入理解和掌握Windows桌面应用程序开发的程序员来说,是一份不可多得的学习材料。通过学习和实践,可以提升编程技能,更好地驾驭MFC这一强大的开发工具。