初识WIN32
MFC是一种开发框架,将C语言实现的WIN32中的上千个API集成为几百个类。
先接触几个名词:
1. 句柄:系统在创建资源的时候会为它们分配内存,并返回资源的标识号即句柄(HANDLE)。
2. 消息与消息队列:
操作系统------①----》消息队列---②----》应用程序
↓ ↑ ↓
| -------------------③----------------
④
|-------》窗口过程
操作系统发现客户端事件,将此事件放入消息队列,应用程序从消息队列中捕获消息,再将消息分发给操作系统,操作系统再进行一些回调函数的操作。
WIN32编程模型:
底层实现窗口:程序的主入口—WINMAIN()函数
需引入头文件#include
示例代码:
#include<Windows.h>
LRESULT CALLBACK WindowProc(
HWND hwnd,
UINT umsg,
WPARAM wparam,
LPARAM lparam
){
switch(umsg){
case WM_CLOSE:{
DestroyWindow(hwnd);
}break;
case WM_DESTROY:{
PostQuitMessage(0);
}break;
}
return DefWindowProc(hwnd,umsg,wparam,lparam);
}
int WINAPI WinMain(
HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPSTR lpCmdLine,
int nShowCmd )
{
//1、设计窗口
WNDCLASS wc;
wc.cbClsExtra = 0;
wc.cbWndExtra = 0;
wc.hbrBackground = (HBRUSH)GetStockObject(WHITE_BRUSH);
wc.hCursor = LoadCursor(NULL,IDC_HAND);
wc.hIcon = LoadIcon(NULL,IDI_ERROR);
wc.hInstance = hInstance