Tab (Windows Controls)
This section contains information about the programming elements used with tab controls.
Overviews
Topic | Contents |
---|---|
About Tab Controls | A tab control is analogous to the dividers in a notebook or the labels in a file cabinet. By using a tab control, an application can define multiple pages for the same area of a window or dialog box. |
Using Tab Controls | This topic contains two examples that use tab controls. |
Macros
Topic | Contents |
---|---|
TabCtrl_AdjustRect | Calculates a tab control's display area given a window rectangle, or calculates the window rectangle that would correspond to a specified display area. You can use this macro or send the TCM_ADJUSTRECT message explicitly. |
TabCtrl_DeleteAllItems | Removes all items from a tab control. You can use this macro or send the TCM_DELETEALLITEMS message explicitly. |
TabCtrl_DeleteItem | Removes an item from a tab control. You can use this macro or send the TCM_DELETEITEM message explicitly. |
TabCtrl_DeselectAll | Resets items in a tab control, clearing any that were set to the TCIS_BUTTONPRESSED state. You can use this macro or send the TCM_DESELECTALL message explicitly. |
TabCtrl_GetCurFocus | Returns the index of the item that has the focus in a tab control. You can use this macro or send the TCM_GETCURFOCUS message explicitly. |
TabCtrl_GetCurSel | Determines the currently selected tab in a tab control. You can use this macro or send the TCM_GETCURSEL message explicitly. |
TabCtrl_GetExtendedStyle | Retrieves the extended styles that are currently in use for the tab control. You can use this macro or send the TCM_GETEXTENDEDSTYLE message explicitly. |
TabCtrl_GetImageList | Retrieves the image list associated with a tab control. You can use this macro or send the TCM_GETIMAGELIST message explicitly. |
TabCtrl_GetItem | Retrieves information about a tab in a tab control. You can use this macro or send the TCM_GETITEM message explicitly. |
TabCtrl_GetItemCount | Retrieves the number of tabs in the tab control. You can use this macro or send the TCM_GETITEMCOUNT message explicitly. |
TabCtrl_GetItemRect | Retrieves the bounding rectangle for a tab in a tab control. You can use this macro or send the TCM_GETITEMRECT message explicitly. |
TabCtrl_GetRowCount | Retrieves the current number of rows of tabs in a tab control. You can use this macro or send the TCM_GETROWCOUNT message explicitly. |
TabCtrl_GetToolTips | Retrieves the handle to the tooltip control associated with a tab control. You can use this macro or send the TCM_GETTOOLTIPS message explicitly. |
TabCtrl_GetUnicodeFormat | Retrieves the UNICODE character format flag for the control. You can use this macro or send the TCM_GETUNICODEFORMAT message explicitly. |
TabCtrl_HighlightItem | Sets the highlight state of a tab item. You can use this macro or send the TCM_HIGHLIGHTITEM message explicitly. |
TabCtrl_HitTest | Determines which tab, if any, is at a specified screen position. You can use this macro or send the TCM_HITTEST message explicitly. |
TabCtrl_InsertItem | Inserts a new tab in a tab control. You can use this macro or send the TCM_INSERTITEM message explicitly. |
TabCtrl_RemoveImage | Removes an image from a tab control's image list. You can use this macro or send the TCM_REMOVEIMAGE message explicitly. |
TabCtrl_SetCurFocus | Sets the focus to a specified tab in a tab control. You can use this macro or send the TCM_SETCURFOCUS message explicitly. |
TabCtrl_SetCurSel | Selects a tab in a tab control. You can use this macro or send the TCM_SETCURSEL message explicitly. |
TabCtrl_SetExtendedStyle | Sets the extended styles that the tab control will use. You can use this macro or send the TCM_SETEXTENDEDSTYLE message explicitly. |
TabCtrl_SetImageList | Assigns an image list to a tab control. You can use this macro or send the TCM_SETIMAGELIST message explicitly. |
TabCtrl_SetItem | Sets some or all of a tab's attributes. You can use this macro or send the TCM_SETITEM message explicitly. |
TabCtrl_SetItemExtra | Sets the number of bytes per tab reserved for application-defined data in a tab control. You can use this macro or send the TCM_SETITEMEXTRA message explicitly. |
TabCtrl_SetItemSize | Sets the width and height of tabs in a fixed-width or owner-drawn tab control. You can use this macro or send the TCM_SETITEMSIZE message explicitly. |
TabCtrl_SetMinTabWidth | Sets the minimum width of items in a tab control. You can use this macro or send the TCM_SETMINTABWIDTH message explicitly. |
TabCtrl_SetPadding | Sets the amount of space (padding) around each tab's icon and label in a tab control. You can use this macro or send the TCM_SETPADDING message explicitly. |
TabCtrl_SetToolTips | Assigns a tooltip control to a tab control. You can use this macro or send the TCM_SETTOOLTIPS message explicitly. |
TabCtrl_SetUnicodeFormat | Sets the Unicode character format flag for the control. This message allows you to change the character set used by the control at run time rather than having to re-create the control. You can use this macro or send the TCM_SETUNICODEFORMAT message explicitly. |
Messages
Topic | Contents |
---|---|
TCM_ADJUSTRECT | Calculates a tab control's display area given a window rectangle, or calculates the window rectangle that would correspond to a specified display area. You can send this message explicitly or by using the TabCtrl_AdjustRect macro. |
TCM_DELETEALLITEMS | Removes all items from a tab control. You can send this message explicitly or by using the TabCtrl_DeleteAllItems macro. |
TCM_DELETEITEM | Removes an item from a tab control. You can send this message explicitly or by using the TabCtrl_DeleteItem macro. |
TCM_DESELECTALL | Resets items in a tab control, clearing any that were set to the TCIS_BUTTONPRESSED state. You can send this message explicitly or by using the TabCtrl_DeselectAll macro. |
TCM_GETCURFOCUS | Returns the index of the item that has the focus in a tab control. You can send this message explicitly or by using the TabCtrl_GetCurFocus macro. |
TCM_GETCURSEL | Determines the currently selected tab in a tab control. You can send this message explicitly or by using the TabCtrl_GetCurSel macro. |
TCM_GETEXTENDEDSTYLE | Retrieves the extended styles that are currently in use for the tab control. You can send this message explicitly or by using the TabCtrl_GetExtendedStyle macro. |
TCM_GETIMAGELIST | Retrieves the image list associated with a tab control. You can send this message explicitly or by using the TabCtrl_GetImageList macro. |
TCM_GETITEM | Retrieves information about a tab in a tab control. You can send this message explicitly or by using the TabCtrl_GetItem macro. |
TCM_GETITEMCOUNT | Retrieves the number of tabs in the tab control. You can send this message explicitly or by using the TabCtrl_GetItemCount macro. |
TCM_GETITEMRECT | Retrieves the bounding rectangle for a tab in a tab control. You can send this message explicitly or by using the TabCtrl_GetItemRect macro. |
TCM_GETROWCOUNT | Retrieves the current number of rows of tabs in a tab control. You can send this message explicitly or by using the TabCtrl_GetRowCount macro. |
TCM_GETTOOLTIPS | Retrieves the handle to the tooltip control associated with a tab control. You can send this message explicitly or by using the TabCtrl_GetToolTips macro. |
TCM_GETUNICODEFORMAT | Retrieves the Unicode character format flag for the control. You can send this message explicitly or use the TabCtrl_GetUnicodeFormat macro. |
TCM_HIGHLIGHTITEM | Sets the highlight state of a tab item. You can send this message explicitly or by using the TabCtrl_HighlightItem macro. |
TCM_HITTEST | Determines which tab, if any, is at a specified screen position. You can send this message explicitly or by using the TabCtrl_HitTest macro. |
TCM_INSERTITEM | Inserts a new tab in a tab control. You can send this message explicitly or by using the TabCtrl_InsertItem macro. |
TCM_REMOVEIMAGE | Removes an image from a tab control's image list. You can send this message explicitly or by using the TabCtrl_RemoveImage macro. |
TCM_SETCURFOCUS | 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_SETCURSEL | Selects a tab in a tab control. You can send this message explicitly or by using the TabCtrl_SetCurSel macro. |
TCM_SETEXTENDEDSTYLE | Sets the extended styles that the tab control will use. You can send this message explicitly or by using the TabCtrl_SetExtendedStyle macro. |
TCM_SETIMAGELIST | Assigns an image list to a tab control. You can send this message explicitly or by using the TabCtrl_SetImageList macro. |
TCM_SETITEM | Sets some or all of a tab's attributes. You can send this message explicitly or by using the TabCtrl_SetItem macro. |
TCM_SETITEMEXTRA | Sets the number of bytes per tab reserved for application-defined data in a tab control. You can send this message explicitly or by using the TabCtrl_SetItemExtra macro. |
TCM_SETITEMSIZE | Sets the width and height of tabs in a fixed-width or owner-drawn tab control. You can send this message explicitly or by using the TabCtrl_SetItemSize macro. |
TCM_SETMINTABWIDTH | Sets the minimum width of items in a tab control. You can send this message explicitly or by using the TabCtrl_SetMinTabWidth macro. |
TCM_SETPADDING | Sets the amount of space (padding) around each tab's icon and label in a tab control. You can send this message explicitly or by using the TabCtrl_SetPadding macro. |
TCM_SETTOOLTIPS | Assigns a tooltip control to a tab control. You can send this message explicitly or by using the TabCtrl_SetToolTips macro. |
TCM_SETUNICODEFORMAT | Sets the Unicode character format flag for the control. This message allows you to change the character set used by the control at run time rather than having to re-create the control. You can send this message explicitly or use the TabCtrl_SetUnicodeFormat macro. |
Notifications
Topic | Contents |
---|---|
NM_CLICK (tab) | Notifies the parent window of a tab control that the user has clicked the left mouse button within the control. This notification code is sent in the form of a WM_NOTIFY message. |
NM_DBLCLK (tab) | Notifies a parent window of a tab control that the user has double-clicked the left mouse button within the control. This notification is sent in the form of a WM_NOTIFY message. |
NM_RCLICK (tab) | Notifies the parent window of a tab control that the user has clicked the right mouse button within the control. This notification code is sent in the form of a WM_NOTIFY message. |
NM_RDBLCLK (tab) | Notifies the parent window of a tab control that the user has double-clicked the right mouse button within the control. This notification code is sent in the form of a WM_NOTIFY message. |
NM_RELEASEDCAPTURE (tab) | Notifies a tab control's parent window that the control is releasing mouse capture. This notification code is sent in the form of a WM_NOTIFY message. |
TCN_FOCUSCHANGE | Notifies a tab control's parent window that the button focus has changed. This notification code is sent in the form of a WM_NOTIFY message. |
TCN_GETOBJECT | Sent by a tab control when it has the TCS_EX_REGISTERDROP extended style and an object is dragged over a tab item in the control. This notification code is sent in the form of a WM_NOTIFY message. |
TCN_KEYDOWN | Notifies a tab control's parent window that a key has been pressed. This notification code is sent in the form of a WM_NOTIFY message. |
TCN_SELCHANGE | Notifies a tab control's parent window that the currently selected tab has changed. This notification code is sent in the form of a WM_NOTIFY message. |
TCN_SELCHANGING | Notifies a tab control's parent window that the currently selected tab is about to change. This notification code is sent in the form of a WM_NOTIFY message. |
Structures
Topic | Contents |
---|---|
NMTCKEYDOWN | Contains information about a key press in a tab control. It is used with the TCN_KEYDOWN notification code. This structure supersedes the TC_KEYDOWN structure. |
TCHITTESTINFO | Contains information about a hit test. This structure supersedes the TC_HITTESTINFO structure. |
TCITEM | Specifies or receives the attributes of a tab item. It is used with the TCM_INSERTITEM, TCM_GETITEM, and TCM_SETITEM messages. This structure supersedes the TC_ITEM structure. |
TCITEMHEADER | Specifies or receives the attributes of a tab. It is used with the TCM_INSERTITEM, TCM_GETITEM, and TCM_SETITEM messages. This structure supersedes the TC_ITEMHEADER structure. |
Constants
Topic | Contents |
---|---|
Tab Control Extended Styles | The tab control now supports extended styles. These styles are manipulated using the TCM_GETEXTENDEDSTYLE and TCM_SETEXTENDEDSTYLE messages and should not be confused with extended window styles that are passed to CreateWindowEx. |
Tab Control Item States | Tab control items now support an item state to support the TCM_DESELECTALL message. Additionally, the TCITEM structure supports item state values. |
Tab Control Styles | This section lists supported tab control styles. |