Функция DestroyWindow уничтожает определенное окно. Функция посылает сообщения WM_DESTROY и WM_NCDESTROY окну, чтобы дезактивировать его и удалить фокус клавиатуры из него. Функция также уничтожает меню окна, очищает очередь потоков сообщений, уничтожает таймеры, удаляет монопольное использование буфера обмена и разрывает цепочку просмотра окон буфера обмена (если окно имеет наверху цепочку просмотров). Если определенное окно - родитель или владелец окон, DestroyWindow автоматически уничтожает связанные дочерние или находящиеся в собственности окна, когда она уничтожает окно владельца или родителя. Функция сначала уничтожает дочерние или находящиеся в собственности окна, и затем она уничтожает окно владельца или родителя. DestroyWindow также уничтожает немодальные диалоговые окна, созданные функцией CreateDialog.
Синтаксис:
BOOL DestroyWindow
(
HWND hWnd // дескриптор для разрушения окна
);
Параметры:
hWnd: Идентификатор окна, которое будет разрушено.
Возвращаемые значения: Если функция завершается успешно, возвращаемое значение отлично от нуля. Если функция не выполняет задачу, возвращаемое значение нулевое. Чтобы получать расширенные данные об ошибках, вызовите GetLastError.
Замечания: Поток не может использовать DestroyWindow, чтобы уничтожить окно, созданное другим потоком. Если разрушаемое окно - дочернее окно, которое не имеет стиля WS_EX_NOPARENTNOTIFY, сообщение WM_PARENTNOTIFY посылается родителю.
Информация:
Минимальные DLL версия |
user32.dll |
Заголовок |
Объявленный в Winuser.h, включают Windows.h |
Импорт библиотеки |
User32.lib |
Минимальные операционные системы |
Windows 95, Windows NT 3,1 |
Unicode |
Выполнена в Unicode версии. |
|