用c++写一个创建窗口例子
时间: 2023-03-24 17:01:40 浏览: 160
火山PC创建多窗口例子
好的,以下是一个用C语言编写的创建窗口的示例代码:
```c
#include <stdio.h>
#include <stdlib.h>
#include <windows.h>
// 窗口过程回调函数
LRESULT CALLBACK WindowProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
{
switch (uMsg)
{
case WM_CLOSE:
DestroyWindow(hwnd);
break;
case WM_DESTROY:
PostQuitMessage(0);
break;
default:
return DefWindowProc(hwnd, uMsg, wParam, lParam);
}
return 0;
}
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow)
{
// 注册窗口类
WNDCLASS wc = {0};
wc.lpfnWndProc = WindowProc;
wc.hInstance = hInstance;
wc.lpszClassName = "MyWindowClass";
RegisterClass(&wc);
// 创建窗口
HWND hwnd = CreateWindow(
"MyWindowClass", // 窗口类名
"My Window", // 窗口标题
WS_OVERLAPPEDWINDOW, // 窗口风格
CW_USEDEFAULT, // 窗口位置横坐标
CW_USEDEFAULT, // 窗口位置纵坐标
CW_USEDEFAULT, // 窗口宽度
CW_USEDEFAULT, // 窗口高度
NULL, // 父窗口句柄
NULL, // 菜单句柄
hInstance, // 应用程序实例句柄
NULL); // 创建参数
if (!hwnd)
{
return 1;
}
// 显示窗口
ShowWindow(hwnd, nCmdShow);
UpdateWindow(hwnd);
// 消息循环
MSG msg = {0};
while (GetMessage(&msg, NULL, 0, 0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
return msg.wParam;
}
```
这个示例程序会创建一个名为"My Window"的窗口,并在窗口的标题栏上显示这个名字。当用户关闭窗口时,程序会自动退出。你可以将代码保存到一个以".c"为扩展名的文件中,然后用C语言编译器编译运行。
阅读全文