Сообщение WM_CHANGEUISTATE

Приложение отправляет на обработку сообщение WM_CHANGEUISTATE, чтобы указать, что состояние интерфейса пользователя (UI) должно измениться.

Синтаксис

Чтобы отправить на обработку это сообщение, вызовите функцию SendMessage как ниже указано.
lResult = SendMessage(
 
   (HWND) hWndControl,
  // дескриптор целевого органа управления
   (UINT) WM_CHANGEUISTATE,
  // ID сообщения
   (WPARAM) wParam,
  // = (WPARAM) () wParam;
   (LPARAM) lParam
  // = (LPARAM) () lParam;
);
 

Параметры

wParam

Младшее слово устанавливает действие, которое будет предпринято. Этот элемент может быть одним из ниже перечисленных значений.

Значение

Предназначение

UIS_CLEAR Элемент, хранящий состояние UI, заданный старшим словом, должен быть скрыт.
UIS_INITIALIZE Элемент, хранящий состояние UI, заданный старшим словом должен измениться, основываясь на последнем событии ввода данных. Дополнительную информацию, см. в разделе Замечания.
UIS_SET Элемент, хранящий состояние UI, заданный старшим словом должен быть видим.

 

Старшее слово определяет, какой элемент, хранящий состояние UI, воздействует  или стиль органа управления. Он может состоять из одного или нескольких ниже перечисленных значений.

 

Значение

Предназначение

UISF_HIDEACCEL Ускорители клавиатуры.
UISF_HIDEFOCUS Индикаторы фокуса.
UISF_ACTIVE Windows XP: Орган управления должен рисоваться в стиле, используемом для активных органов управления.

lParam

Этот параметр не используется и должен быть ПУСТО (NULL).

Возвращаемое значение

Возвращаемых значений нет.

Замечания

Окно должно отправлять на обработку это сообщение себе или своему родителю тогда, когда оно должно изменить элементы, хранящие состояние UI всех окон одной и той же иерархии. Оконная процедура должна позволять DefWindowProc обрабатывать это сообщение так, чтобы все дерево окна имело совместимое состояние UI. Когда окно верхнего уровня получает сообщение WM_CHANGEUISTATE, оно отправляет на обработку сообщение WM_UPDATEUISTATE с одними и теми же параметрами всем дочерним окнам. Когда система обрабатывает сообщение WM_UPDATEUISTATE, она делает изменение в состоянии UI.

Если младшее слово wParam - UIS_INITIALIZE, система отправит на обработку сообщение WM_UPDATEUISTATE с состоянием UI, основанным на последнем событии ввода данных. Например, если последний ввод данных поступил от мыши, система скроет команды вызова программы клавиатуры. И наоборот, если последний ввод данных поступил от клавиатуры, система покажет команды вызова программы клавиатуры. Если состояние, которое следует из обработки WM_CHANGEUISTATE, является одним и тем же, значит это старое состояние, а DefWindowProc не отправляла на обработку это сообщение.

Смотри также

Обзор Ускорители клавиатуры, Сообщения, используемые ускорителями клавиатуры, DefWindowProc HIWORD, LOWORD, WM_QUERYUISTATE, WM_UPDATEUISTATE

Размещение и совместимость WM_CHANGEUISTATE
К Windows XP Да
л Windows 2000 Professional Да
и Windows NT Workstation Нет
е Windows Me Нет
н Windows 98 Нет
т Windows 95 Нет
 
С Windows Server 2003 Да
е Windows 2000 Server Да
р Windows NT Server Нет
в    
е    
р    
Используемая библиотека -
Используемая DLL -
Заголовочный файл  
- объявлено в Winuser.h
- включено в Windows.h
Unicode Нет
Замечания по платформе Не имеется

 

 

Назад в оглавление
На главную страницу
На главную страницу справки

Hosted by uCoz