- 1 定义WinMain入口函数
- 2 定义窗口处理函数 WindowsProc(用来处理消息。有如公司业务处理,具体干活的人。)
- 3 注册窗口类 RegisterClass(往系统中写数据。有如在工商局把填表并提交上去注册公司)
- 4 创建窗口 CreateWindows (在内存中创建窗口出来。申请了一块内存,保存了关于窗口的数据。有如实体公司有了地点空间,装修好了,并有了从业人员等。)
- 5 显示窗口 ShowWindows/UpdateWindow (显示窗口,把窗口绘制在显示器上。有如公司开张打广告)
- 6 消息循环 while(1){......} ( 有如公司开展了业务搜寻,不断的扩展业务)
- GetMessage (抓消息,找项目,拉业务)
- TranslateMessage (翻译消息,有如需求分析师,写需求分析文档,把客户的要求写成程序猿能看懂的文档)
- DisptachMessage (派发消息,谁处理消息就派发给谁。有如公司谁干活就派发给他干活)
- 7 消息处理 由激发消息DisptachMessage触发回调函数WindowsProc来干活。
- 不注册窗口类,能不能成功创建窗口?
- 答案是肯定的,创建系统现有的类窗口,就不再需要注册:如Button控件。
// WinAPICreat.cpp : Defines the entry point for the
application.//一个巨大的按钮出来了~~!
#include "stdafx.h"
int APIENTRY WinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPSTR lpCmdLine,
int nCmdShow)
{
// 没有注册窗口类,是因为系统帮我们注册了。
HWND hWnd =
CreateWindow("BUTTON","OK",WS_OVERLAPPEDWINDOW,100,100,500,500,NULL,NULL,hInstance,NULL);
ShowWindow(hWnd,SW_SHOW);
UpdateWindow(hWnd);
MSG msg;
while (GetMessage(&msg,NULL,NULL,NULL))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
return 0;
}
时间: 2024-10-13 16:11:43