BM_GETSTATE

An application sends a BM_GETSTATE message to determine the state of a button or check box.

BM_GETSTATE

wParam = 0; // not used; must be zero

lParam = 0; // not used; must be zero

Parameters

This message has no parameters.

Return Values

The return value specifies the current state of the button. You can use the following bitmasks to extract information about the state:

Value Meaning
0x0003 Specifies the check state (radio buttons and check boxes only). A value of BST_UNCHECKED indicates the button is unchecked; a value of BST_CHECKED indicates the button is checked. A radio button is checked when it contains a dot; a check box is checked when it contains an X. A value of BST_INDETERMINATE indicates the check state is indeterminate (applies only if the button has the BS_3STATE or BS_AUTO3STATE style). A three-state check box is grayed when its state is indeterminate.
BST_CHECKED Indicates the button is checked.
BST_FOCUS Specifies the focus state. A nonzero value indicates that the button has the keyboard focus.
BST_INDETERMINATE Indicates the button is grayed because the state of the button is indeterminate. This value applies only if the button has the BS_3STATE or BS_AUTO3STATE style.
BST_PUSHED Specifies the highlight state. A nonzero value indicates that the button is highlighted. A button is automatically highlighted when the user positions the cursor over it and presses and holds the left mouse button. The highlighting is removed when the user releases the mouse button.
BST_UNCHECKED Indicates the button is unchecked. Same as the Windows NT return value of zero.

See Also

BM_GETCHECK, BM_SETSTATE