有了上一章的实验,我们来创建第一个 自己设计的窗口
按照之前的步骤,再创建一个新的项目,文件名称是 app.cpp (也可以是app.c),并将这个类取名为 MyApp,即最后运行的程序为MyAPP.exe
运行一遍发现这个窗口没法拖动,也没办法关闭。但是,窗口也确实显示出来了。
#include <windows.h> LRESULT CALLBACK WindowProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam); int WINAPI wWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, PWSTR pCmdLine, int nCmdShow) { WNDCLASS wc = {}; wc.lpfnWndProc = WindowProc; wc.hInstance = hInstance; wc.lpszClassName = L"应用程序MyAPP"; RegisterClass(&wc); HWND hwnd = CreateWindowEx(WS_EX_TOPMOST, L"应用程序MyApp", L"MyFrame边框图", WS_OVERLAPPEDWINDOW, 100, 100, 800, 600, NULL, NULL, hInstance, NULL); ShowWindow(hwnd, nCmdShow); UpdateWindow(hwnd); MSG msg; while (GetMessageW(&msg, NULL, 0, 0)>0) { TranslateMessage(&msg); DispatchMessageW(&msg); } } LRESULT CALLBACK WindowProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam) { switch (uMsg) { case WM_DESTROY: PostQuitMessage(0); return 0; } return DefWindowProc(hwnd, uMsg, wParam, lParam); }
从Visual Studio 中中止运行的程序,先分析代码过程。
标签:wc,Windows,hwnd,uMsg,Win32,hInstance,API,msg,NULL From: https://www.cnblogs.com/nerocm/p/17977699