首页 > 代码库 > mfc学习笔记

mfc学习笔记

1. Windows API函数根据功能大体可以分为以下三大类型

  1. 窗口管理函数:实现窗口创建、移动和修改等功能;
  2. 图形设备函数:又称图形设备接口,实现图形的绘制及操作功能;
  3. 系统服务函数:实现与操作系统有关的一些功能。

2. 句柄:在Windows应用程序中除了普通变量之外的诸如窗口、按钮、滚动条等复杂的程序对象和实例的标识。不同Windows对象具有不同的类型,常用句柄类型见下表1。

表1:常用的句柄类型

句柄类型

说明

句柄类型

说明

HWND

窗口句柄

HDC

图形设备环境句柄

HINSTANCE

当前程序应用实例句柄

HBITMAP

位图句柄

HCURSOR

光标句柄

HICON

图标句柄

HFONT

字体句柄

HMENU

菜单句柄

HPEN

画笔句柄

HFILE

文件句柄

HBRUSH

画刷句柄

  

3. 基本数据类型的别名:为提高程序程序的可读性(凡是Windows自定义数据类型的关键字都要大写)

typedef unsigned long DWORD;

typedef unsigned char BYTE;

typedef unsigned short WORD;

typedef float FLOAT;

typedef unsigned int UINT;

typedef int BOOL;

4. 事件与消息:Windows应用程序靠事件触发产生响应,事件由各种信息描述,称为消息,消息结构定义如下:

typedef struct tagMSG

{

HWND hwnd;             // 产生消息的窗口句柄

UINT    message;       // 消息标识码

WPARAM wParam;   // 消息的附加信息 1

LPARAM  lParam;      // 消息的附加信息 2

DWORD  time;           // 消息进入消息队列的时刻

POINT point;              // 表示发送该消息时光标的位置

}

5. 消息循环:系统为每个应用程序都建立了一个叫做消息队列的存储空间,在程序的运行过程中如果发生了一个事件,Windows就会把这个事件对应的消息送入消息队列等待使用;应用程序可以通过调用Windows提供的API函数GetMessage()从消息队列中获取消息,并利用GetMessage()函数的返回值(当获取消息时,该函数返回TRUE,否则返回FALSE)组织一个循环,从而可以不断从消息队列获取消息,一旦获取了一个消息,就把这个消息发送给系统。

mfc学习笔记