gpt4 book ai didi

c++ - 为什么 DestroyWindow 会关闭我的应用程序?

转载 作者:行者123 更新时间:2023-12-01 19:13:03 27 4
gpt4 key购买 nike

我在创建主窗口后创建了一个窗口,但在其句柄上调用 DestroyWindow 会关闭整个应用程序,我怎样才能简单地摆脱它?

它看起来像这样:

BOOL InitInstance(HINSTANCE hInstance, int nCmdShow)
{
HWND hWnd;
HWND fakehandle;


hInst = hInstance; // Store instance handle in our global variable

hWnd = CreateWindow(szWindowClass, szTitle, WS_OVERLAPPEDWINDOW | WS_EX_LAYERED,
CW_USEDEFAULT, 0, CW_USEDEFAULT, 0, NULL, NULL, hInstance, NULL);

fakehandle = CreateWindow(szWindowClass, "FAKE WINDOW", WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT, 0, CW_USEDEFAULT, 0, NULL, NULL, hInstance, NULL);

if (!hWnd || !fakehandle)
{
return FALSE;
}
//some code
DestroyWindow(fakehandle);


ShowWindow(hWnd, nCmdShow);
UpdateWindow(hWnd);

return TRUE;
}

如何在不破坏主窗口的情况下破坏该窗口?我正在创建一个虚拟窗口来检查 OpenGL 中的多重采样。

谢谢

最佳答案

我刚刚发现了这条评论:

If the specified window is a parent or owner window, DestroyWindow automatically destroys the associated child or owned windows when it destroys the parent or owner window. The function first destroys child or owned windows, and then it destroys the parent or owner window.

关于 the DestroyWindow MSDN page .

这对您的问题有影响吗?您能否在您拥有 //some code 的位置设置 hWnd 的父级?

关于c++ - 为什么 DestroyWindow 会关闭我的应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2908632/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com