The TCM_SETCURFOCUS message sets the focus to a specified tab in a tab control. You can send this message explicitly or by using the TabCtrl_SetCurFocus macro.
TCM_SETCURFOCUS wParam = (WPARAM) (int) iItem; // index of the tab that gets the focus lParam = 0; // not used; must be zero
No return value.
If the tab control has the TCS_BUTTONS style (button mode), the tab with the focus may be different from the selected tab. For example, when a tab is selected, the user can press the arrow keys to set the focus to a different tab without changing the selected tab. In button mode, TCM_SETCURFOCUS sets the input focus to the button associated with the specified tab, but it does not change the selected tab.
If the tab control does not have the TCS_BUTTONS style, changing the focus also changes selected tab. In this case, the tab control sends the TCN_SELCHANGING and TCN_SELCHANGE notification messages to its parent window.
TabCtrl_GetCurFocus, TCM_GETCURFOCUS, TCN_SELCHANGE, TCN_SELCHANGING, TCM_SETCURFOCUS