Видимість вікна

Вікно може бути видимими або прихованими. Система відображає вікно відображається на екрані. Це приховує приховані вікна не малювання на це. Якщо вікно відображається, користувач може постачати вводу до вікна і переглянути у вікні виводу. Якщо вікно приховано, він ефективно відключений. Приховані вікна може обробляти повідомлення з системи або інші вікна, але його неможливо обробити введення від користувача або відображення виведення. Застосунок встановлює стан видимості у вікні під час створення вікна. Пізніше додаток може змінити стан видимості.

Вікно є видимим, коли вікна вибрано стиль WS_VISIBLE. За промовчанням функцію CreateWindowEx створює прихованого вікна, якщо програма визначає стиль WS_VISIBLE. Як правило, застосунок встановлює стиль WS_VISIBLE, після того, як він створив вікно Зберегти подробиці процесу створення приховані від користувача. Наприклад, програма може зберегти нове вікно приховані, хоча це Настройка вигляду вікна. Якщо стиль WS_VISIBLE, визначається CreateWindowEx, система WM_SHOWWINDOW повідомлення надсилається до вікна після створення вікна, але перед відображенням його.

Програма може визначити, чи вікно відображається за допомогою функції IsWindowVisible . Програма може показати (зробити видимими) або приховати вікно за допомогою функції ShowWindow, SetWindowPos, DeferWindowPosабо SetWindowPlacement . Ці функції показати або приховати вікно Налаштування або видаляючи WS_VISIBLE стиль вікна. Вони також відправити WM_SHOWWINDOW повідомлення до вікна до показу або приховування його.

Згорнуте вікно власника, система автоматично приховує відповідні у власності windows. Аналогічним чином, після відновлення власник-вікно, система автоматично показує відповідні у власності windows. В обох випадках система надсилання WM_SHOWWINDOW повідомлення належить windows перед приховувати або показувати їх. Іноді застосунок може знадобитися приховати належить windows без того, щоб звести до мінімуму або приховати власника. У цьому разі додаток використовує функцію ShowOwnedPopups . Ця функція встановлює або видаляє WS_VISIBLE стиль для всіх належить windows та надсилає повідомлення WM_SHOWWINDOW належить windows перед приховувати або показувати їх. Приховати вікно власник не впливає на стан видимості належить windows.

Коли батько вікно відображається, свого пов'язаних дитини windows доступні також. Аналогічним чином, коли батько вікно приховано, її дочірні вікна також приховані. Згортання вікна батьків не впливає на стан видимості дитини windows; тобто, дитина windows зведені до мінімуму, разом з батьками, але стиль WS_VISIBLE не змінюється.

Навіть якщо вікно має стиль WS_VISIBLE, користувач не може бути можливість бачити вікно на екрані; інші вікна можуть повністю перекриваються або його переміщено поза межі екрана. Крім того, видно дочірнього вікна може бути відсікання правилам, які встановлені його батько дитина відносин. Якщо у вікні батьківського вікно не відображається, це також не буде видно. Якщо вікно батьківського рухається за межами краю екрана, дочірнього вікна також переміщується тому що дочірнього вікна звертається по відношенню до батьків лівий верхній кут. Наприклад, користувач може перемістити батьківського вікна, яке містить дочірнього вікна досить далеко від краю екрана, що користувач не може бути можливість бачити дочірнього вікна, хоча дочірнього вікна та вікна, що його батько обидва мають стиль WS_VISIBLE.