An application sends the WM_CHANGEUISTATE message to indicate that the UI state should be changed.
#define WM_CHANGEUISTATE 0x0127
The low-order word specifies the action to be taken. This member can be one of the following values.
The UI state flags specified by the high-order word should be cleared.
The UI state flags specified by the high-order word should be changed based on the last input event. For more information, see Remarks.
The UI state flags specified by the high-order word should be set.
The high-order word specifies which UI state elements are affected or the style of the control. This member can be one or more of the following values.
A control should be drawn in the style used for active controls.
Keyboard accelerators are hidden.
Focus indicators are hidden.
This parameter is not used and must be 0.
A window should send this message to itself or its parent when it must change the UI state elements of all windows in the same hierarchy. The window procedure must let DefWindowProc process this message so that the entire window tree has a consistent UI state. When the top-level window receives the WM_CHANGEUISTATE message, it sends a WM_UPDATEUISTATE message with the same parameters to all child windows. When the system processes the WM_UPDATEUISTATE message, it makes the change in the UI state.
If the low-order word of wParam is UIS_INITIALIZE, the system will send the WM_UPDATEUISTATE message with a UI state based on the last input event. For example, if the last input came from the mouse, the system will hide the keyboard cues. And, if the last input came from the keyboard, the system will show the keyboard cues. If the state that results from processing WM_CHANGEUISTATE is the same as the old state, DefWindowProc does not send this message.
|Minimum supported client
||Windows 2000 Professional [desktop apps only]
|Minimum supported server
||Windows 2000 Server [desktop apps only]