c++怎么创建窗口
时间: 2023-10-14 19:08:40 浏览: 85
在 C++ 中创建窗口需要使用一个图形界面库,例如 MFC、Qt、wxWidgets 等。
以下是使用 Win32 API 创建窗口的示例代码:
```c++
#include <windows.h>
// 定义窗口过程函数
LRESULT CALLBACK WindowProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam) {
switch (uMsg) {
case WM_DESTROY:
PostQuitMessage(0);
return 0;
default:
return DefWindowProc(hwnd, uMsg, wParam, lParam);
}
}
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nShowCmd) {
// 注册窗口类
WNDCLASS wc = { };
wc.lpfnWndProc = WindowProc;
wc.hInstance = hInstance;
wc.lpszClassName = "MyWindowClass";
RegisterClass(&wc);
// 创建窗口
HWND hwnd = CreateWindow(
"MyWindowClass", "My Window Title",
WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT, CW_USEDEFAULT, 640, 480,
NULL, NULL, hInstance, NULL
);
// 显示窗口
ShowWindow(hwnd, nShowCmd);
// 进入消息循环
MSG msg = { };
while (GetMessage(&msg, NULL, 0, 0)) {
TranslateMessage(&msg);
DispatchMessage(&msg);
}
return 0;
}
```
这个代码片段注册了一个名为 "MyWindowClass" 的窗口类,然后创建了一个 640x480 大小的 WS_OVERLAPPEDWINDOW 类型的窗口,并显示出来。最后进入消息循环,等待消息的处理。在窗口销毁时,调用 PostQuitMessage 函数通知消息循环结束。
阅读全文