小甲鱼 发表于 2014-6-8 21:26:05

DestroyWindow

函数功能:

DestroyWindow 用于销毁一个指定的窗口,该函数通过发送 WM_DESTROY 消息和 WM_NCDESTROY 消息使窗口无效并移除其键盘焦点。

DestroyWindow 函数还销毁窗口的菜单,清空线程的消息队列,销毁与窗口过程相关的定时器,解除窗口对剪贴板的拥有权,打断剪贴板器的查看链。

如果指定的窗口拥有子窗口或拥有其它窗口,该函数将自动先销毁其子窗口或所拥有的窗口,然后再销毁自身。


API 函数原型:

BOOL WINAPI DestroyWindow(
_In_HWND hWnd
);


参数解析:


参数 含义
hWnd 指定将被销毁的窗口句柄


返回值:

1. 如果函数成功执行,返回值为非 0;

2. 如果函数执行失败,返回值为 0。


备注:

1. 一个线程不能使用本函数销毁别的线程创建的窗口。

2. 如果这个窗口是一个不具有 WS_EX_NOPARENTNOTIFY 样式的子窗口,则销毁窗口时将发 WM_PARENTNOTIFY 消息给其父窗口。

【API档案】版权归鱼C工作室(www.fishc.com)所有,转载请注明来源。

WinSDK

Aszion 发表于 2015-1-30 13:16:54

学习了谢谢资料

゛落君灬殇丶 发表于 2015-10-2 14:37:44

{:1_1:}甚好甚好

hustjinghu 发表于 2016-10-20 09:31:48

谢谢分享,原来DestroyWindow干了这么多的活儿,销毁菜单栏、清空消息队列、定时器清理、解除对粘贴板的所有权。。。。

hustjinghu 发表于 2016-10-20 09:32:55

这么说,消息队列是在CreateWindow中创建的,是在DestroyWindow函数中销毁的。同样,菜单栏也是在在CreateWindow中创建,DestroyWindow中销毁。

谦虚求学 发表于 2016-10-27 12:07:51

{:5_91:}

tony2526 发表于 2016-12-30 23:24:02

跟着甲鱼老师学习一下,谢谢哦
页: [1]
查看完整版本: DestroyWindow