win32框架

阅读: 评论:0

win32框架

win32框架

#include <windows.h>
#include <tchar.h>static TCHAR szWindowClass[] = _T("WindowClass");
static TCHAR szTitle[] = _T("我的第一个程序");//第五步:窗口函数中处理窗口消息
LRESULT CALLBACK WindowProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
{PAINTSTRUCT ps;HDC hdc; //HDC绘图句柄TCHAR greeting[] = _T("第一个程序");switch (uMsg){case WM_CLOSE:{int iRet = MessageBox(hWnd, _T("要关闭窗口吗?"), _T("Tip"), MB_OKCANCEL);if (iRet == IDOK) PostQuitMessage(0);}break;case WM_PAINT:  //第一次创建窗口hdc = BeginPaint(hWnd, &ps); //准备指定的绘图窗口TextOut(hdc, 100, 100, greeting, _tcslen(greeting)); //在指定位置写一个字符串EndPaint(hWnd, &ps); //在指定的窗口绘画结束break;case WM_DESTROY://点击关闭按钮PostQuitMessage(0);//指定应用程序退出break;default:return DefWindowProc(hWnd, uMsg, wParam, lParam); //吧没用的消息丢给他处理break;}return 0;
}int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow)
{//第一步:注册窗口类,指定窗口类的名称与窗口回调函数WNDCLASSEX wcex = { 0 };wcex.cbSize = sizeof(WNDCLASSEX);  //注册窗口类的大小wcex.lpfnWndProc = WindowProc;     //处理消息,当有消息产生都交给他处理wcex.lpszClassName = szWindowClass;//注册窗口if (!RegisterClassEx(&wcex)) //判断是否注册成功{MessageBox(NULL, _T("注册窗口类失败"), _T("Tip"), NULL);return 1;}//第二步:创建窗口,指定注册窗口类,窗口标题,窗口的大小HWND hWnd = CreateWindow(szWindowClass,   //只有先注册了该窗口,才能创建该窗口szTitle,         //窗口名WS_OVERLAPPEDWINDOW | WS_MAXIMIZE, //窗口样式400,250, // 窗口x与y坐标500, 300,//窗口的宽度与高度NULL,NULL,hInstance,NULL);if (!hWnd) //窗口是否创建成功{MessageBox(NULL, _T("创建窗口失败!"), _T("Tip"), NULL);return 1;}//第三步:显示窗口ShowWindow(hWnd, nCmdShow);//第四步:开始消息循环MSG msg = { 0 }; //定义消息结构体变量while (GetMessage(&msg, NULL, 0, 0)) //判断是否存在消息{TranslateMessage(&msg); //将虚拟消息转化字符消息DispatchMessage(&msg);  //该函数调度一个消息给窗口程序}return (int)msg.wParam;
}

流程:
1.注册窗口
2.创建窗口
3.显示窗口
4.开始消息循环
5.窗口函数中处理窗口消息.

本文发布于:2024-01-31 01:28:49,感谢您对本站的认可!

本文链接:https://www.4u4v.net/it/170663572924363.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:框架
留言与评论(共有 0 条评论)
   
验证码:

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23