Вспомогательные функции создания окон

Windows API содержит множество функций, связанных с созданием окон. Это функции поиска, определения состояния, перемещения окон, а также обмена сообщениями с пользователем.

Функции поиска и определения состояния окон

Часто требуется определить, существует ли окно для некоторого дескриптора. На этот вопрос отвечает функция IsWindow:

BOOL IsWindow(HWND hwnd);

Если окно с дескриптором hwnd существует, функция возвращает ненулевое значение, иначе – нуль.

Если нужно определить, имеет ли заданное окно фокус ввода, вызывают функцию IsWindowEnabled:

BOOL IsWindowEnabled(HWND hwnd);

Если окно hwnd активно, функция возвращает ненулевое значение, иначе – нуль.

Для передачи или отнятия фокуса ввода у окна вызывают функцию EnableWindow:

BOOL EnableWindow(HWND hwnd, BOOL bEnable);

При bEnable = TRUE фокус ввода передают окну hwnd, иначе – блокируют это окно.

Если окно ранее было неактивно, возвращаемое значение отлично от нуля. Если окно было активно, возвращаемое значение – нуль.

Фокус ввода окну hwnd передают с помощью функции SetFocus:

SetFocus(hwnd);

Следующая функция возвращает ненулевое значение, если окно hwnd свернуто в пиктограмму:

BOOL IsIconic(HWND hwnd);

Функция FindWindow у операционной системы запрашивает дескриптор окна (не дочернего) класса lpClassName с заголовком lpWindowName. Эта функция объявлена следующим образом:

HWND FindWindow(LPCTSTR lpClassName, LPCTSTR lpWindowName);

Если lpWindowName = NULL, то заголовок искомого окна может быть любым. Если lpClassName = NULL, искомое окно может принадлежать к любому классу. Рекомендуется указывать данные как можно более подробнее. Если такое окно найдено, функция возвращает его дескриптор, иначе – NULL.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: