本文乃fireaxe原创,使用GPL发布,可以自由拷贝,转载。但转载请保持文档的完整性,并注明原作者及原链接,严禁用于任何商业用途。
作者:fireaxe_hq@hotmail.com
博客:fireaxe.blog.chinaunix.net
1)在MFC中建立Win32 Application类项目(不需要MFC)
2)添加头文件
建立WinApi.h与WInApi.Cpp两个文件
3)WinApi.h文件内容
- #include "windows.h"
- LRESULT CALLBACK WndPro(HWND, UINT, WPARAM, LPARAM); // 声明处理函数
- int WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int); // 声明入口函数
3)WinApi.c文件内容
- #include "WinApi.h"
- int WINAPI WinMain(HINSTANCE hInstance, // 实例句柄
- HINSTANCE hPreInstance,
- LPSTR lpZCmdline, // 息队列
- int nCmdShow)
- {
- WNDCLASS wcApp; // 定义窗口类
- MSG msg; // 定义windows消息
- HWND ghWnd = NULL; // 定义窗口句柄
- char *szAppName = "程序名称";
- char *szAppTitle = "窗口名称"
- // 给窗口类赋值
- wcApp.style = CS_HREDRAW; // 窗口风格
- wcApp.lpfnWndProc = WndProc; // 消息处理函数
- wcApp.cbWndExtra = 0;
- wcApp.cbCl***tra = 0;
- wcApp.hInstance =hInstance; // 应用程序句柄
- wcApp.hICon = LoadIcon(NULL, IDC_WINLOGO); // 加载图标
- wcApp.Hcursor = LoadCursor(NULL, IDC_ARROR); // 加载鼠标样式
- wcApp.hbrBackground = (HBRUSH)COLOR_ACTIVEBORDER; // 加载背景
- wcApp.lpszMenuName = NULL; //无菜单
- wcApp.lpszClassName = szAppName; // 设置窗口类名
- RegisterClass(&wcApp); // 注册窗口
- // 调用CreateWindow函数建立窗口
- ghWnd = CreateWindow(szAppName, szAppTitle, WS_SYSMENU,
- 100, 100, 350, 300,
- NULL, NULL, hInStance, NULL);
- if (NULL == ghWnd)
- {
- return 0;
- }
- ShowWindow(ghWnd, nCmdShowP); // 显示窗口
- UpdateWindow(ghWnd); // 更新窗口
- // 创建消息循环
- while (GetMessage(&msg, NULL, 0, 0)) // 接收消息,存入msg
- {
- TranslateMessage(&msg); // 解释消息
- DispatchMessage(&msg); // 处理消息, 发送WndProc函数, 即wcApp.lpfnWndProc指向的函数
- }
-
- return msg.wParam;
- }
- LRESULT CALL BACK WndProc(HWND hwnd, // 窗口句柄
- UINT message, // 消息标示
- WPARAM wParam,
- LPARM lParam)
- {
- // 消息处理
- switch(message)
- {
- case WM_CREATE:
- ......
- break;
- case WM_LBUTTON:
- ......
- break;
- case WM_DESTROY:
- ......
- PostQuitMessage(0); // 向Windows发送程序终止请求
- break;
- default:
- return DefWindowProc(hWnd, message, wParam, lParam);
- }
-
- return FALSE;
- }
本文乃fireaxe原创,使用GPL发布,可以自由拷贝,转载。但转载请保持文档的完整性,并注明原作者及原链接,严禁用于任何商业用途。
作者:fireaxe_hq@hotmail.com
博客:fireaxe.blog.chinaunix.net
阅读(2642) | 评论(0) | 转发(0) |