首页 > 编程知识 正文

MFC-CreateWindow

时间:2023-05-03 21:30:53 阅读:218627 作者:4425

#include <windows.h>LONG WINAPI WndProc (HWND, UINT, WPARAM, LPARAM);int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hprevInstance, LPSTR lpszCmdLine, int nCmdShow){WNDCLASS wc;HWND hwnd;MSG msg;wc.style = 0;wc.lpfnWndProc = (WNDPROC)WndProc;wc.cbClsExtra = 0;wc.cbWndExtra = 0;wc.hInstance = hInstance;wc.hIcon = LoadIcon(NULL, IDI_WINLOGO);wc.hCursor = LoadCursor(NULL, IDC_ARROW);wc.hbrBackground = (HBRUSH)(COLOR_WINDOW + 1);wc.lpszMenuName = NULL;wc.lpszClassName = "MyWndClass";RegisterClass(&wc);hwnd = CreateWindow(// 创建窗口"MyWndClass",// 名字"SDK Application",// 标题栏中显示的文本WS_OVERLAPPEDWINDOW,// 窗口样式CW_USEDEFAULT,// 水平CW_USEDEFAULT,// 垂直CW_USEDEFAULT,// 宽CW_USEDEFAULT,// 高HWND_DESKTOP,// 父窗口NULL,// 菜单句柄hInstance,// 实例句柄NULL// 指向特定应用程序的指针);ShowWindow(hwnd, nCmdShow);UpdateWindow(hwnd);while (GetMessage(&msg, NULL, 0, 0))// 检查消息队列{TranslateMessage(&msg);// 将消息转换为WM_CHARDispatchMessage(&msg);// 将消息发送给窗口}return msg.wParam;}LRESULT CALLBACK WndProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam){PAINTSTRUCT ps;HDC hdc;switch (message){case WM_PAINT:hdc = BeginPaint(hwnd, &ps);Ellipse(hdc, 0, 0, 200, 100);EndPaint(hwnd, &ps);return 0;case WM_DESTROY:PostQuitMessage(0);return 0;}return DefWindowProc(hwnd, message, wParam, lParam);}

 

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。