博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Win32 模版程序
阅读量:4955 次
发布时间:2019-06-12

本文共 2989 字,大约阅读时间需要 9 分钟。

1 #include "windows.h"  2   3 ATOM MyRegisterClass(HINSTANCE hInstance);  4 BOOL InitInstance(HINSTANCE hInstance, int nCmdShow);  5 LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam);  6   7 HINSTANCE hInst;  8   9 //********************************************************* 10 // 主程序 11 //********************************************************* 12 int APIENTRY WinMain(HINSTANCE hInstance, 13                      HINSTANCE hPrevInstance, 14                      LPSTR     lpCmdLine, 15                      int       nCmdShow) 16 { 17     MSG msg; 18  19     // 注册窗口类 20     MyRegisterClass(hInstance); 21  22     // 初始化 23     if (!InitInstance (hInstance, nCmdShow)) 24     { 25         return FALSE; 26     } 27  28     // 消息循环 29     while (GetMessage(&msg, NULL, 0, 0)) 30     { 31         TranslateMessage(&msg); 32         DispatchMessage(&msg); 33     } 34  35     return msg.wParam; 36 } 37  38 //********************************************************* 39 // 注册窗口类别函数 40 //********************************************************* 41 ATOM MyRegisterClass(HINSTANCE hInstance) 42 { 43     WNDCLASSEX wcex; 44  45     wcex.cbSize        = sizeof(WNDCLASSEX);  46     wcex.style         = CS_HREDRAW | CS_VREDRAW; 47     wcex.lpfnWndProc   = WndProc; 48     wcex.cbClsExtra    = 0; 49     wcex.cbWndExtra    = 0; 50     wcex.hInstance     = hInstance; 51     wcex.hIcon         = LoadIcon(NULL, IDI_APPLICATION); 52     wcex.hCursor       = LoadCursor(NULL, IDC_ARROW); 53     wcex.hbrBackground = (HBRUSH)(COLOR_WINDOW+1); 54     wcex.lpszMenuName  = NULL; 55     wcex.lpszClassName = TEXT("Test"); 56     wcex.hIconSm       = NULL; 57  58     return RegisterClassEx(&wcex); 59 } 60  61 //********************************************************* 62 // 初始化函数 63 //********************************************************* 64 BOOL InitInstance(HINSTANCE hInstance, int nCmdShow) 65 { 66     HWND hWnd; 67     hInst = hInstance; 68  69     hWnd = CreateWindow(TEXT("Test"), TEXT("Win32 Template") , WS_OVERLAPPEDWINDOW, 70         CW_USEDEFAULT, 0, CW_USEDEFAULT, 0, NULL, NULL, hInstance, NULL); 71     if (!hWnd) 72     { 73         return FALSE; 74     } 75  76     ShowWindow(hWnd, nCmdShow); 77     UpdateWindow(hWnd); 78  79     return TRUE; 80 } 81  82 //********************************************************* 83 // 窗口过程函数 84 //********************************************************* 85 LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) 86 { 87     PAINTSTRUCT ps; 88     HDC         hdc; 89  90     switch (message)  91     { 92     case WM_PAINT: 93         hdc = BeginPaint(hWnd, &ps); 94         EndPaint(hWnd, &ps); 95         break; 96     case WM_DESTROY:  97         PostQuitMessage(0); 98         break; 99     default:             100         return DefWindowProc(hWnd, message, wParam, lParam);101     }102 103     return 0;104 }

转载于:https://www.cnblogs.com/Hisin/archive/2012/07/22/2603780.html

你可能感兴趣的文章
Git 笔记 - section 1
查看>>
JZOJ 4.1 B组 俄罗斯方块
查看>>
HDU6409 没有兄弟的舞会
查看>>
2018 Multi-University Training Contest 10 - TeaTree
查看>>
HDU6205 card card card
查看>>
2018 Multi-University Training Contest 10 - Count
查看>>
HDU6198 number number number
查看>>
HDU6438 Buy and Resell
查看>>
HDU6446 Tree and Permutation
查看>>
HDU6201 transaction transaction transaction
查看>>
HDU6203 ping ping ping
查看>>
前端小笔记
查看>>
《人人都是产品经理》书籍目录
查看>>
如何在git bash中运行mysql
查看>>
OO第三阶段总结
查看>>
构建之法阅读笔记02
查看>>
初学差分约束
查看>>
HEVC编码学习(一)HM配置
查看>>
通过Spark SQL关联查询两个HDFS上的文件操作
查看>>
DataTable和 DataRow的 区别与联系
查看>>