
孙鑫视频VC++深入详解学习笔记
文章平均质量分 77
Debugyt
这个作者很懒,什么都没留下…
展开
-
Lesson1: Windows程序运行原理及程序编写流程
窗口产生过程,句柄原理,消息队列,回调函数,窗口关闭与应用程序退出的工作关系,使用VC++的若干小技巧,stdcall与Lessonecl调用规范的比较,初学者常犯错误及注意事项。1. Windows API与Win32 SDK操作系统提供了各种方便开发Windows应用程序的编程接口,所的函数都在Windows。h头文件中声明。Win32 SDK(Softwa转载 2012-02-22 13:58:17 · 543 阅读 · 0 评论 -
Lesson9: 定制应用程序的外观
1,修改外观和图标可以在MainFrm中进行,而修改背景和光标只能在View中进行。为什么?因为view的显示挡在了MainFrame的前面。a.在MainFrame中PreCreateWindow()中,在窗口创建之前,用重新注册窗口类的方法,比较麻烦。在PreCreateWindow()中修改也可以用简单的方法,用全局函数//cs.lpszClass=AfxRegist转载 2012-02-22 14:20:58 · 402 阅读 · 0 评论 -
Lesson6: 菜单编程
1. MFC中的顶层菜单默认为弹出菜单(Pop-up),它是不能用来作命令响应的,当取消Pop-up选项后可接受命令响应。2. 消息的分类:标准消息,命令消息,通告消息。[标准消息]:除WM_COMMAND之外,所有以WM_开头的消息。从CWnd类派生的类都可以接收到这一消息[命令消息]:来自菜单、加速键或工具栏按钮的消息。这类消息都以WM_COMM转载 2012-02-22 14:18:57 · 374 阅读 · 0 评论 -
Lesson19 动态链接库DLL
Windows API中的所有函数都包含在DLL中。其中有三个最重要的DLL,Kernel32.dll,它包含用于管理内存、进程和线程的各个函数;User32.dll,它包含用于执行用户界面任务(如窗口的创建和消息的传送)的各个函数;GDI32.dll,它包含用于画图和显示文本的各个函数。静态库和动态库静态库:函数和数据被编译进一个二进制文件(通常扩展名为.LIB)。在使用静态库的转载 2012-02-22 15:25:48 · 516 阅读 · 0 评论 -
Lesson 16 线程同步与异步套接字
1. 事件对象事件对象同上一课中的互斥对象一样属于内核对象,它包含三个成员:使用读数,用于指明该事件是一个自动重置的还是人工重置的事件的布尔值,用于指明该事件处于已通知状态还是未通知状态的布尔值.当人工重置的事件对象得到通知时,等待该事件对象的所有纯种无变为可高度线程,而一个自动重置的事件对象得到通知时,等待该事件对象的线程中人有一个变为可高度线程.所以一般使用线程同步转载 2012-02-22 15:20:14 · 856 阅读 · 0 评论 -
Lesson10: 绘图控制
1. 画图: a.创建四个菜单,为其添加消息响应; b.在View中添加m_DrawType,保存绘画类型; c.增加成员变量,m_PtOrigin,当按下鼠标左键时,保存此点; d.在OnLButtonUp中画点,线,矩形,椭圆,别忘记设置成透明画刷2. 为其添加一个设置对话框(线型和线宽) a.创建对话框,为其创建转载 2012-02-22 14:21:20 · 361 阅读 · 0 评论 -
Lesson4: 简单绘图
1. 在单文档中view挡在MainFrame的前面。此时如果编写针对MainFrame的mouseClick事件,将不会有反应。因为MFC视类窗口是覆盖在框架窗口上的,因此框架窗口不能感到鼠标消息.2. MFC的消息映射机制:在每个能接收和处理消息的类中,定义一个消息和消息函数对照表,即消息映射表.在消息映射表中,消息与对应的消息处理函数指转载 2012-02-22 14:02:04 · 526 阅读 · 0 评论 -
Lesson20 Hook与数据编程
通过安装Hook过程,可以用来屏蔽消息队列中某些消息The SetWindowsHookEx function installs an application-defined hook procedure into a hook chain. You would install a hook procedure to monitor the system for certain types转载 2012-02-22 15:26:55 · 932 阅读 · 0 评论 -
Lesson17进程间通信
有四种方法1.剪贴板 a.创建个ClipBoard的对话框应用程序,加两EditBox和两个Button发送接收。 b.具体代码:发送端代码:if(OpenClipboard()){ CString str; HANDLE hClip; char *pBuf; EmptyClipboard(); GetDlgItemText(IDC_EDIT_S转载 2012-02-22 15:24:35 · 492 阅读 · 0 评论 -
Lesson14 网络编程
sockets(套接字)编程有三种,流式套接字(SOCK_STREAM),数据报套接字(SOCK_DGRAM),原始套接字(SOCK_RAW);基于TCP的socket编程是采用的流式套接字(SOCK_STREAM)。基于UDP采用的数据报套接字(SOCK_DGRAM).1.TCP流式套接字的编程步骤在使用之前须链接库函数:工程->设置->Link->输入ws2_32.lib,OK转载 2012-02-22 14:24:56 · 448 阅读 · 0 评论 -
Lesson11 图形的保存和重绘
1. 创建4个菜单,为其添加消息响应,用成员变量保存绘画类型。添加LButtonDown和Up消息。2. 当窗口重绘时,如果想再显示原先画的数据,则需要保存数据。为此创建一个新类来记录绘画类型和两个点。class CGraph {public:CPoint m_ptOrigin;//起点CPoint m_ptEnd;//终点UINT转载 2012-02-22 14:21:51 · 457 阅读 · 0 评论 -
Lesson7: 对话框编程
1. Windows应用程序工作的基本流程是从用户那里得到数据,经过相应的处理之后,现把处理结果输出到屏幕,打印机或者绵输出设备。这就需要用到Windows应用程序的用户接口对话框。对话框就是一个窗口,它不公可以接收消息,而且还可以被移动和关闭,甚至可以在它的客户区中进行绘图。相当于一个窗口,在它上面能够旋转各种标准控件和扩展控件。都是由CWnd类派生来 2.转载 2012-02-22 14:20:20 · 444 阅读 · 0 评论 -
Lesson5: 文本编程
1,创建插入符:void CreateSolidCaret( int nWidth, int nHeight );//创建插入符void CreateCaret( CBitmap* pBitmap );//创建位图插入符void ShowCaret( );//显示插入符void HideCaret( );//隐藏插入符static void PASCAL S转载 2012-02-22 14:14:03 · 370 阅读 · 0 评论 -
Lesson2: 掌握C++基本语法
1. C++主要特点:封装性(Encapsulation):把数据与操作数据的函数组织在一起,使程序结构更加紧凑,提高类内部数据的安全性。继承性(Inheritance):增加了软件的可扩充性及代码重用性;多态性(Polymorphism):使设计人员在设计程序时可以对问题进行更好的抽象,有利于代码的维护和可重用2. C++中几个特性的实现技转载 2012-02-22 13:59:00 · 376 阅读 · 0 评论 -
Lesson 15 多线程
1. 程序,进程,线程A: 程序是计算机指令的集合,它以文件的形式存储在磁盘上,而进程通常被定义为一个正在运行的程序的实例,是一个程序在其自身的地址空间中的一次执行活动.一个程序可以对应多个进程.进程是资源申请,高度和独立运行的单位,因此,它使用系统中的运行资源,而程序不能申请系统资源,不能被系统高度也不能作为独立运行的单位,因此它不占系统运行资源.进程组成:转载 2012-02-22 14:29:10 · 475 阅读 · 0 评论 -
Lesson 13: 文档串行化
1. CArchive在菜单打开保存时的代码CFile file("1.txt",CFile::modeCreate | CFile::modeWrite);CArchive ar(&file,CArchive::store);int i=4;char ch='a';float f=1.3f;CString str("http://www.su转载 2012-02-22 14:24:04 · 538 阅读 · 0 评论 -
Lesson12 文件操作
1. 常量指针与指针常量的区分 char ch[5]="lisi"; const char *pStr=ch;//const在*之前,表明指针指向的内容为常量,即为常量指针,但指针可指向其它变量。 char * const pStr=ch;//const在*之后,表明指针的地址不能改变,即为指针常量,但指针所指向的内容是可以改变的;const char * cons转载 2012-02-22 14:22:57 · 575 阅读 · 0 评论 -
Lesson3: MFC框架程序剖析
1. MFC简介:MFC(Microsoft Foundation Class,微软基础类库)是微软为了简化程序员的开发工作所开发的一套C++类的集合,是一套面向对象的函数库,以为的方式提供给用户使用.利用这些类,可以有效发帮助程序员完成Windows应用程序的开发MFC AppWizard是一个辅助生成源代码的向导工具,它可以帮助我们自动生成基于MFC框架的源代码.在向导转载 2012-02-22 13:59:58 · 410 阅读 · 0 评论 -
Lesson18 Active控件
容器和服务器程序容器应用程序时可以嵌入或链接对象的应用程序。Word就是容器应用程序。服务器应用程序是创建对象并且当对象被双击时,可以被启动的应用程序。Excel就是服务器应用程序。ActiveX控件不能独立运行,它必须被嵌入容器应用程序中,和容器应用程序一起运行。 Dispatch maps调度映射,主要是MFC提供让外部应用程序可以访问控件的属性和方法转载 2012-02-22 15:25:24 · 618 阅读 · 0 评论