TimoSoft TabStrip  1.5.2.141
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Properties Pages
ITabStrip Interface Reference

The main interface More...

Public Member Functions

HRESULT About (void)
 Displays the control's credits
HRESULT BeginDrag ([in] ITabStripTabContainer *draggedTabs,[in, defaultvalue(0)] OLE_HANDLE hDragImageList,[in, out, defaultvalue(0)] OLE_XPOS_PIXELS *xHotSpot,[in, out, defaultvalue(0)] OLE_YPOS_PIXELS *yHotSpot)
 Enters drag'n'drop mode
HRESULT CalculateDisplayArea ([in, out] RECTANGLE *windowRectangle,[in, out] RECTANGLE *displayArea)
 Calculates a display area based on a window rectangle
HRESULT CalculateWindowRectangle ([in, out] RECTANGLE *displayArea,[in, out] RECTANGLE *windowRectangle)
 Calculates a window rectangle based on a display area
HRESULT CountTabRows ([out, retval] LONG *pValue)
 Retrieves the current number of tab rows in the control
HRESULT CreateTabContainer ([in, optional] VARIANT Tabs,[out, retval] ITabStripTabContainer **ppContainer)
 Creates a new TabStripTabContainer object
HRESULT EndDrag ([in] VARIANT_BOOL abort)
 Exits drag'n'drop mode
HRESULT GetClosestInsertMarkPosition ([in] OLE_XPOS_PIXELS x,[in] OLE_YPOS_PIXELS y,[in, out] InsertMarkPositionConstants *relativePosition,[in, out] ITabStripTab **tsTab)
 Proposes a position for the control's insertion mark
HRESULT GetInsertMarkPosition ([in, out] InsertMarkPositionConstants *relativePosition,[in, out] ITabStripTab **tsTab)
 Retrieves the position of the control's insertion mark
HRESULT HitTest ([in] OLE_XPOS_PIXELS x,[in] OLE_YPOS_PIXELS y,[in, out] HitTestConstants *hitTestDetails,[out, retval] ITabStripTab **ppHitTab)
 Hit-tests the specified point
HRESULT LoadSettingsFromFile ([in] BSTR file,[out, retval] VARIANT_BOOL *pSucceeded)
 Loads the control's settings from the specified file
HRESULT OLEDrag ([in, defaultvalue(NULL)] LONG *pDataObject,[in, defaultvalue(odeCopyOrMove)] OLEDropEffectConstants supportedEffects,[in, defaultvalue(-1)] OLE_HANDLE hWndToAskForDragImage,[in, defaultvalue(NULL)] ITabStripTabContainer *draggedTabs,[in, defaultvalue(-1)] LONG itemCountToDisplay,[out, retval] OLEDropEffectConstants *pPerformedEffects)
 Enters OLE drag'n'drop mode
HRESULT Refresh (void)
 Advises the control to redraw itself
HRESULT SaveSettingsToFile ([in] BSTR file,[out, retval] VARIANT_BOOL *pSucceeded)
 Saves the control's settings to the specified file
HRESULT SetInsertMarkPosition ([in] InsertMarkPositionConstants relativePosition,[in] ITabStripTab *tsTab)
 Sets the position of the control's insertion mark

Properties

ITabStripTab ActiveTab [get, set]
 Specifies the control's active tab
VARIANT_BOOL AllowDragDrop [get, set]
 Specifies whether the control detects drag'n'drop operations
AppearanceConstants Appearance [get, set]
 Controls the style of the control's outer border
BorderStyleConstants BorderStyle [get, set]
 Controls the style of the control's inner border
ITabStripTab CaretTab [get, set]
 Specifies the control's caret tab
VARIANT_BOOL CloseableTabs [get, set]
 Specifies whether each tab contains a close button
DisabledEventsConstants DisabledEvents [get, set]
 Controls which events are fired
OLE_YSIZE_PIXELS DisplayAreaHeight [get]
 Retrieves the height of the control's display area
OLE_XPOS_PIXELS DisplayAreaLeft [get]
 Retrieves the left border of the control's display area
OLE_YPOS_PIXELS DisplayAreaTop [get]
 Retrieves the upper border of the control's display area
OLE_XSIZE_PIXELS DisplayAreaWidth [get]
 Retrieves the width of the control's display area
LONG DragActivateTime [get, set]
 Controls the speed of automatic tab activation during drag'n'drop
ITabStripTabContainer DraggedTabs [get]
 Retrieves the tabs currently dragged
LONG DragScrollTimeBase [get, set]
 Controls the speed of automatic scrolling during drag'n'drop
ITabStripTab DropHilitedTab [get, set]
 Specifies the tab that currently is the drop target
VARIANT_BOOL Enabled [get, set]
 Controls whether the control accepts user input
OLE_XSIZE_PIXELS FixedTabWidth [get, set]
 Specifies the tabs' fixed width
VARIANT_BOOL FocusOnButtonDown [get, set]
 Specifies whether clicking a tab moves the keyboard focus to the control
IFontDisp Font [get, set]
 Specifies the control's font
OLE_HANDLE hDragImageList [get]
 Retrieves the imagelist containing the drag image
OLE_HANDLE hHighResImageList [get, set]
 Specifies the control's associated imagelist that is used for Aero drag images
OLE_HANDLE hImageList [get, set]
 Specifies the control's associated imagelist
OLE_XSIZE_PIXELS HorizontalPadding [get, set]
 Controls the tabs' appearance
VARIANT_BOOL HotTracking [get, set]
 Controls the control's mouse-hover effects
LONG HoverTime [get, set]
 Controls when the MouseHover event is fired
OLE_HANDLE hWnd [get]
 Retrieves the control's window handle
OLE_HANDLE hWndArrowButtons [get]
 Retrieves the contained up-down control's window handle
OLE_HANDLE hWndToolTip [get, set]
 Specifies the tooltip control's window handle
OLE_COLOR InsertMarkColor [get, set]
 Specifies the color of the control's insertion mark
OLE_XSIZE_PIXELS MinTabWidth [get, set]
 Specifies the tabs' minimum width
IPictureDisp MouseIcon [get, set]
 Controls the control's mouse cursor
MousePointerConstants MousePointer [get, set]
 Controls the control's mouse cursor
VARIANT_BOOL MultiRow [get, set]
 Controls the arrangement of the control's tabs
VARIANT_BOOL MultiSelect [get, set]
 Specifies whether multiple tabs can be selected
OLEDragImageStyleConstants OLEDragImageStyle [get, set]
 Specifies the appearance of the OLE drag images generated by the control
VARIANT_BOOL OwnerDrawn [get, set]
 Specifies whether the tabs are drawn by the application instead of the control
VARIANT_BOOL ProcessContextMenuKeys [get, set]
 Specifies whether the ContextMenu event can be invoked using the keyboard
VARIANT_BOOL RaggedTabRows [get, set]
 Specifies whether tabs are stretched
RegisterForOLEDragDropConstants RegisterForOLEDragDrop [get, set]
 Controls the control's behavior in drag'n'drop operations
RightToLeftConstants RightToLeft [get, set]
 Controls the control's right-to-left features
VARIANT_BOOL ScrollToOpposite [get, set]
 Controls the arrangement of the control's tabs
VARIANT_BOOL ShowButtonSeparators [get, set]
 Controls how tabs are visually separated
VARIANT_BOOL ShowDragImage [get, set]
 Controls the visibility of the control's drag image
VARIANT_BOOL ShowToolTips [get, set]
 Specifies whether the control displays any tooltips
StyleConstants Style [get, set]
 Controls the general appearance of the control's tabs
VARIANT_BOOL SupportOLEDragImages [get, set]
 Controls the control's behavior in drag'n'drop operations
TabBoundingBoxDefinitionConstants TabBoundingBoxDefinition [get, set]
 Specifies which parts of a tab are handled as such
TabCaptionAlignmentConstants TabCaptionAlignment [get, set]
 Controls the alignment of the tabs' captions
OLE_YSIZE_PIXELS TabHeight [get, set]
 Specifies all tabs' height
TabPlacementConstants TabPlacement [get, set]
 Controls the arrangement of the control's tabs
ITabStripTabs Tabs [get]
 Retrieves the control's tabs
VARIANT_BOOL UseFixedTabWidth [get, set]
 Specifies whether all of the control's tabs are the same width
VARIANT_BOOL UseSystemFont [get, set]
 Specifies whether the control uses the system font
BSTR Version [get]
 Retrieves the control's version
OLE_YSIZE_PIXELS VerticalPadding [get, set]
 Controls the tabs' appearance

Detailed Description

The main interface

This is the control's main interface. It wraps the control window.

See Also
_ITabStripEvents, ITabStripTab, ITabStripTabs, IVirtualTabStripTab

Member Function Documentation

HRESULT About ( void  )

Displays the control's credits

Displays some information about this control and its author.

HRESULT BeginDrag ( [in] ITabStripTabContainer draggedTabs,
[in, defaultvalue(0)] OLE_HANDLE  hDragImageList,
[in, out, defaultvalue(0)] OLE_XPOS_PIXELS *  xHotSpot,
[in, out, defaultvalue(0)] OLE_YPOS_PIXELS *  yHotSpot 
)

Enters drag'n'drop mode

Parameters
[in]draggedTabsA collection object containing the tabs to drag.
[in]hDragImageListThe imagelist containing the drag image that shall be used to visualize the drag'n'drop operation. If -1, the control creates the drag image itself; if 0, no drag image is used.
[in,out]xHotSpotThe x-coordinate (in pixels) of the drag image's hotspot relative to the drag image's upper-left corner. If the hDragImageList parameter is set to -1 or 0, this parameter is ignored. This parameter will be changed to the value that finally was used by the method.
[in,out]yHotSpotThe y-coordinate (in pixels) of the drag image's hotspot relative to the drag image's upper-left corner. If the hDragImageList parameter is set to -1 or 0, this parameter is ignored. This parameter will be changed to the value that finally was used by the method.
See Also
OLEDrag, DraggedTabs, EndDrag, hDragImageList, _ITabStripEvents::TabBeginDrag, _ITabStripEvents::TabBeginRDrag, ITabStripTab::CreateDragImage, ITabStripTabContainer::CreateDragImage
HRESULT CalculateDisplayArea ( [in, out] RECTANGLE windowRectangle,
[in, out] RECTANGLE displayArea 
)

Calculates a display area based on a window rectangle

Calculates the display area, that a tabstrip control with the specified window rectangle would have.

Parameters
[in]windowRectangleThe window rectangle (in pixels) for which the display area shall be calculated.
[in,out]displayAreaThe calculated display area rectangle (in pixels).
See Also
CalculateWindowRectangle, DisplayAreaHeight, DisplayAreaLeft, DisplayAreaTop, DisplayAreaWidth, RECTANGLE
HRESULT CalculateWindowRectangle ( [in, out] RECTANGLE displayArea,
[in, out] RECTANGLE windowRectangle 
)

Calculates a window rectangle based on a display area

Calculates the window rectangle, that a tabstrip control with the specified display area would have.

Parameters
[in]displayAreaThe display area rectangle (in pixels) for which the window rectangle shall be calculated.
[in,out]windowRectangleThe calculated window rectangle (in pixels).
See Also
CalculateDisplayArea, DisplayAreaHeight, DisplayAreaLeft, DisplayAreaTop, DisplayAreaWidth, RECTANGLE
HRESULT CountTabRows ( [out, retval] LONG *  pValue)

Retrieves the current number of tab rows in the control

Returns
The current number of tab rows.
See Also
MultiRow
HRESULT CreateTabContainer ( [in, optional] VARIANT  Tabs,
[out, retval] ITabStripTabContainer **  ppContainer 
)

Creates a new TabStripTabContainer object

Retrieves a new TabStripTabContainer object and fills it with the specified tabs.

Parameters
[in]TabsThe tab(s) to add to the collection. May be either Empty, a tab ID, a TabStripTab object or a TabStripTabs collection.
Returns
The created TabStripTabContainer object.
See Also
ITabStripTabContainer::Clone, ITabStripTabContainer::Add
HRESULT EndDrag ( [in] VARIANT_BOOL  abort)

Exits drag'n'drop mode

Parameters
[in]abortIf True, the drag'n'drop operation will be handled as aborted; otherwise it will be handled as a drop.
See Also
DraggedTabs, BeginDrag, _ITabStripEvents::AbortedDrag, _ITabStripEvents::Drop
HRESULT GetClosestInsertMarkPosition ( [in] OLE_XPOS_PIXELS  x,
[in] OLE_YPOS_PIXELS  y,
[in, out] InsertMarkPositionConstants relativePosition,
[in, out] ITabStripTab **  tsTab 
)

Proposes a position for the control's insertion mark

Retrieves the insertion mark position that is closest to the specified point.

Parameters
[in]xThe x-coordinate (in pixels) of the point for which to retrieve the closest insertion mark position. It must be relative to the control's upper-left corner.
[in]yThe y-coordinate (in pixels) of the point for which to retrieve the closest insertion mark position. It must be relative to the control's upper-left corner.
[out]relativePositionThe insertion mark's position relative to the specified tab. The following values, defined by the InsertMarkPositionConstants enumeration, are valid: impBefore, impAfter, impNowhere.
[out]tsTabThe tab at which the insertion mark should be displayed.
See Also
SetInsertMarkPosition, GetInsertMarkPosition, InsertMarkPositionConstants
HRESULT GetInsertMarkPosition ( [in, out] InsertMarkPositionConstants relativePosition,
[in, out] ITabStripTab **  tsTab 
)

Retrieves the position of the control's insertion mark

Parameters
[out]relativePositionThe insertion mark's position relative to the specified tab. The following values, defined by the InsertMarkPositionConstants enumeration, are valid: impBefore, impAfter, impNowhere.
[out]tsTabThe tab at which the insertion mark is displayed.
See Also
SetInsertMarkPosition, GetClosestInsertMarkPosition, InsertMarkPositionConstants
HRESULT HitTest ( [in] OLE_XPOS_PIXELS  x,
[in] OLE_YPOS_PIXELS  y,
[in, out] HitTestConstants hitTestDetails,
[out, retval] ITabStripTab **  ppHitTab 
)

Hit-tests the specified point

Retrieves the control's parts that lie below the point ('x'; 'y').

Parameters
[in]xThe x-coordinate (in pixels) of the point to check. It must be relative to the control's upper-left corner.
[in]yThe y-coordinate (in pixels) of the point to check. It must be relative to the control's upper-left corner.
[in,out]hitTestDetailsReceives a value specifying the exact part of the control the specified point lies in. Any of the values defined by the HitTestConstants enumeration is valid.
Returns
The tab that the specified point belongs to. Nothing, if no tab was "hit".
See Also
TabBoundingBoxDefinition, HitTestConstants
HRESULT LoadSettingsFromFile ( [in] BSTR  file,
[out, retval] VARIANT_BOOL *  pSucceeded 
)

Loads the control's settings from the specified file

Parameters
[in]fileThe file to read from.
Returns
True if the settings could be loaded; otherwise False.
See Also
SaveSettingsToFile
HRESULT OLEDrag ( [in, defaultvalue(NULL)] LONG *  pDataObject,
[in, defaultvalue(odeCopyOrMove)] OLEDropEffectConstants  supportedEffects,
[in, defaultvalue(-1)] OLE_HANDLE  hWndToAskForDragImage,
[in, defaultvalue(NULL)] ITabStripTabContainer draggedTabs,
[in, defaultvalue(-1)] LONG  itemCountToDisplay,
[out, retval] OLEDropEffectConstants pPerformedEffects 
)

Enters OLE drag'n'drop mode

Parameters
[in]pDataObjectA pointer to the IDataObject implementation to use during OLE drag'n'drop. If not specified, the control's own implementation is used.
[in]supportedEffectsA bit field defining all drop effects you want to support. Any combination of the values defined by the OLEDropEffectConstants enumeration (except odeScroll) is valid.
[in]hWndToAskForDragImageThe handle of the window, that will receive the DI_GETDRAGIMAGE message to specify the drag image to use. If -1, the control creates the drag image itself. If SupportOLEDragImages is set to False, no drag image is used.
[in]draggedTabsA collection object containing the tabs to drag. This parameter is used to generate the drag image, if hWndToAskForDragImage is set to -1.
[in]itemCountToDisplayThe number to display in the item count label of Aero drag images. If set to 0 or 1, no item count label is displayed. If set to -1, the number of tabs contained in the draggedTabs collection is displayed in the item count label. If set to any value larger than 1, this value is displayed in the item count label.
Returns
The performed drop effect. Any of the values defined by the OLEDropEffectConstants enumeration (except odeScroll) is valid.
See Also
BeginDrag, _ITabStripEvents::TabBeginDrag, _ITabStripEvents::TabBeginRDrag, _ITabStripEvents::OLEStartDrag, _ITabStripEvents::OLEGiveFeedback, _ITabStripEvents::OLEQueryContinueDrag, SupportOLEDragImages, OLEDragImageStyle, OLEDropEffectConstants, DI_GETDRAGIMAGE
HRESULT SaveSettingsToFile ( [in] BSTR  file,
[out, retval] VARIANT_BOOL *  pSucceeded 
)

Saves the control's settings to the specified file

Parameters
[in]fileThe file to write to.
Returns
True if the settings could be saved; otherwise False.
See Also
LoadSettingsFromFile
HRESULT SetInsertMarkPosition ( [in] InsertMarkPositionConstants  relativePosition,
[in] ITabStripTab tsTab 
)

Sets the position of the control's insertion mark

Parameters
[in]relativePositionThe insertion mark's position relative to the specified tab. Any of the values defined by the InsertMarkPositionConstants enumeration is valid.
[in]tsTabThe tab at which to display the insertion mark. If set to Nothing, the insertion mark is removed.
See Also
GetInsertMarkPosition, GetClosestInsertMarkPosition, InsertMarkColor, AllowDragDrop, RegisterForOLEDragDrop, InsertMarkPositionConstants

Property Documentation

ITabStripTab ActiveTab
getset

Specifies the control's active tab

Retrieves or sets the control's active tab. The active tab is the tab whose content is currently displayed.

Remarks
This is the control's default property.
See Also
CaretTab, ITabStripTab::Active, MultiSelect, _ITabStripEvents::ActiveTabChanging, _ITabStripEvents::ActiveTabChanged
VARIANT_BOOL AllowDragDrop
getset

Specifies whether the control detects drag'n'drop operations

Retrieves or sets whether drag'n'drop mode can be entered. If set to True, drag'n'drop mode can be entered by pressing the left or right mouse button over a tab and then moving the mouse with the button still pressed. If set to False, drag'n'drop mode is not available - this also means the TabBeginDrag and TabBeginRDrag events don't get fired.

See Also
RegisterForOLEDragDrop, DragActivateTime, DragScrollTimeBase, SetInsertMarkPosition, _ITabStripEvents::TabBeginDrag, _ITabStripEvents::TabBeginRDrag
AppearanceConstants Appearance
getset

Controls the style of the control's outer border

Retrieves or sets the kind of border that is drawn around the control. Any of the values defined by the AppearanceConstants enumeration is valid.

See Also
BorderStyle, AppearanceConstants
BorderStyleConstants BorderStyle
getset

Controls the style of the control's inner border

Retrieves or sets the kind of inner border that is drawn around the control. Any of the values defined by the BorderStyleConstants enumeration is valid.

See Also
Appearance, BorderStyleConstants
ITabStripTab CaretTab
getset

Specifies the control's caret tab

Retrieves or sets the control's caret tab. The caret tab is the tab that has the keyboard focus.

See Also
ActiveTab, ITabStripTab::Caret, MultiSelect, _ITabStripEvents::CaretChanged
VARIANT_BOOL CloseableTabs
getset

Specifies whether each tab contains a close button

Retrieves or sets whether close buttons are drawn for each tab. If set to True, close buttons are drawn; otherwise not.

DisabledEventsConstants DisabledEvents
getset

Controls which events are fired

Retrieves or sets the events that won't be fired. Disabling events increases performance. Any combination of the values defined by the DisabledEventsConstants enumeration is valid.

See Also
DisabledEventsConstants
OLE_YSIZE_PIXELS DisplayAreaHeight
get

Retrieves the height of the control's display area

Retrieves the height of the control's display area in pixels. The display area is the area available for the tabs' content.

Remarks
This property is read-only.
See Also
TabHeight, ITabStripTab::Height, DisplayAreaLeft, DisplayAreaTop, DisplayAreaWidth, CalculateDisplayArea
OLE_XPOS_PIXELS DisplayAreaLeft
get

Retrieves the left border of the control's display area

Retrieves the distance between the control's left border and the display area's left border in pixels. The display area is the area available for the tabs' content.

Remarks
This property is read-only.
See Also
ITabStripTab::Left, DisplayAreaHeight, DisplayAreaTop, DisplayAreaWidth, CalculateDisplayArea
OLE_YPOS_PIXELS DisplayAreaTop
get

Retrieves the upper border of the control's display area

Retrieves the distance between the control's upper border and the display area's upper border in pixels. The display area is the area available for the tabs' content.

Remarks
This property is read-only.
See Also
ITabStripTab::Top, DisplayAreaHeight, DisplayAreaLeft, DisplayAreaWidth, CalculateDisplayArea
OLE_XSIZE_PIXELS DisplayAreaWidth
get

Retrieves the width of the control's display area

Retrieves the width of the control's display area in pixels. The display area is the area available for the tabs' content.

Remarks
This property is read-only.
See Also
ITabStripTab::Width, DisplayAreaHeight, DisplayAreaLeft, DisplayAreaTop, CalculateDisplayArea
LONG DragActivateTime
getset

Controls the speed of automatic tab activation during drag'n'drop

Retrieves or sets the number of milliseconds the mouse cursor must be placed over a tab during a drag'n'drop operation before this tab will be activated automatically. If set to 0, auto-activation is disabled. If set to -1, the system's double-click time is used.

See Also
AllowDragDrop, RegisterForOLEDragDrop, DragScrollTimeBase, _ITabStripEvents::DragMouseMove, _ITabStripEvents::OLEDragMouseMove
ITabStripTabContainer DraggedTabs
get

Retrieves the tabs currently dragged

Retrieves a collection object wrapping the tabs that are currently dragged. These are the same tabs that were passed to the BeginDrag or OLEDrag method.

Remarks
This property is read-only.
See Also
BeginDrag, OLEDrag, ITabStripTabContainer, Tabs
LONG DragScrollTimeBase
getset

Controls the speed of automatic scrolling during drag'n'drop

Retrieves or sets the period of time (in milliseconds) that is used as the time-base to calculate the velocity of auto-scrolling during a drag'n'drop operation. If set to 0, auto-scrolling is disabled. If set to -1, the system's double-click time, divided by 4, is used.

See Also
AllowDragDrop, RegisterForOLEDragDrop, DragActivateTime, _ITabStripEvents::OLEDragMouseMove
ITabStripTab DropHilitedTab
getset

Specifies the tab that currently is the drop target

Retrieves or sets the tab, that is the target of a drag'n'drop operation. Its background is drawn highlighted. If set to Nothing, no tab is a drop target.

See Also
ITabStripTab::DropHilited, AllowDragDrop, RegisterForOLEDragDrop, CaretTab, _ITabStripEvents::OLEDragMouseMove
VARIANT_BOOL Enabled
getset

Controls whether the control accepts user input

Enables or disables the control for user input. If set to True, it reacts to user input; otherwise not.

OLE_XSIZE_PIXELS FixedTabWidth
getset

Specifies the tabs' fixed width

Retrieves or sets the tabs' fixed width in pixels.

See Also
UseFixedTabWidth, MinTabWidth, TabHeight, DisplayAreaWidth
VARIANT_BOOL FocusOnButtonDown
getset

Specifies whether clicking a tab moves the keyboard focus to the control

Retrieves or sets whether the control receives the keyboard focus if a tab is clicked. If set to True, the keyboard focus is set to the control; otherwise not.

IFontDisp Font
getset

Specifies the control's font

Retrieves or sets the control's font. It's used to draw the tabs' text.

See Also
UseSystemFont, ITabStripTab::Text
OLE_HANDLE hDragImageList
get

Retrieves the imagelist containing the drag image

Retrieves the handle to the imagelist containing the drag image that is used during a drag'n'drop operation to visualize the dragged tabs.

See Also
ShowDragImage, BeginDrag, _ITabStripEvents::DragMouseMove
OLE_HANDLE hHighResImageList
getset

Specifies the control's associated imagelist that is used for Aero drag images

Retrieves or sets the handle to the imagelist containing the control's icons that are used when icons with a high resolution are required. Currently the only usage of this imagelist is the creation of Aero OLE drag images.
If set to 0, the imagelist specified by the hImageList property is used.

Remarks
The previously set image list does NOT get destroyed automatically.
See Also
ITabStripTab::IconIndex, hImageList, SupportOLEDragImages, OLEDrag
OLE_HANDLE hImageList
getset

Specifies the control's associated imagelist

Retrieves or sets the handle to the imagelist containing the tabs' icons. If set to 0, no icons are drawn.

Remarks
The previously set image list does NOT get destroyed automatically.
See Also
ITabStripTab::IconIndex, hHighResImageList
OLE_XSIZE_PIXELS HorizontalPadding
getset

Controls the tabs' appearance

Retrieves or sets the amount of space (padding) to the left and right of each tab's icon and label in pixels.

See Also
VerticalPadding, ITabStripTab::IconIndex, ITabStripTab::Text
VARIANT_BOOL HotTracking
getset

Controls the control's mouse-hover effects

Retrieves or sets whether the tab underneath the mouse cursor becomes highlighted. If set to True, the tab becomes highlighted; otherwise not.

Remarks
This property isn't supported for themed tabstrips.
LONG HoverTime
getset

Controls when the MouseHover event is fired

Retrieves or sets the number of milliseconds the mouse cursor must be located over the control's client area before the MouseHover event is fired. If set to -1, the system hover time is used.

See Also
_ITabStripEvents::MouseHover
OLE_HANDLE hWnd
get

Retrieves the control's window handle

Retrieves the control's window handle.

Remarks
This property is read-only.
See Also
hWndArrowButtons, _ITabStripEvents::RecreatedControlWindow, _ITabStripEvents::DestroyedControlWindow
OLE_HANDLE hWndArrowButtons
get

Retrieves the contained up-down control's window handle

Retrieves the window handle of the up-down control that is displayed to let the user scroll the tabs.

Remarks
This property is read-only.
See Also
hWnd, hWndToolTip
OLE_HANDLE hWndToolTip
getset

Specifies the tooltip control's window handle

Retrieves or sets the tooltip control's window handle.

Remarks
The previously set tooltip window does NOT get destroyed automatically.
See Also
hWndArrowButtons, ShowToolTips
OLE_COLOR InsertMarkColor
getset

Specifies the color of the control's insertion mark

Retrieves or sets the color that the control's insertion mark is drawn in.

See Also
SetInsertMarkPosition
OLE_XSIZE_PIXELS MinTabWidth
getset

Specifies the tabs' minimum width

Retrieves or sets the tabs' minimum width in pixels. If set to -1, the system's default tab width is used.

See Also
FixedTabWidth, TabHeight, DisplayAreaWidth
IPictureDisp MouseIcon
getset

Controls the control's mouse cursor

Retrieves or sets a user-defined mouse cursor. It's used if MousePointer is set to mpCustom.

See Also
MousePointer, MousePointerConstants
MousePointerConstants MousePointer
getset

Controls the control's mouse cursor

Retrieves or sets the cursor's type that's used if the mouse cursor is placed within the control's client area. Any of the values defined by the MousePointerConstants enumeration is valid.

See Also
MouseIcon, MousePointerConstants
VARIANT_BOOL MultiRow
getset

Controls the arrangement of the control's tabs

Retrieves or sets whether the tabs are displayed in multiple rows if they don't fit next to each other. If set to True, multiple rows are used; otherwise two arrow buttons are displayed that let the user scroll the tabs.

Remarks
If this property is set to False while the ScrollToOpposite property is set to True, the ScrollToOpposite property will be changed to False.
If this property is set to False while the TabPlacement property is set to tpLeft or tpRight, the TabPlacement property will be changed to tpTop.
See Also
ScrollToOpposite, Style, TabPlacement, UseFixedTabWidth, RaggedTabRows, CountTabRows
VARIANT_BOOL MultiSelect
getset

Specifies whether multiple tabs can be selected

Retrieves or sets whether multiple tabs can be selected at the same time. If set to True, the user may select multiple tabs; otherwise not.

Remarks
Multiselection won't work if the Style property is set to sTabs.
See Also
Style, ActiveTab, CaretTab, ITabStripTab::Selected, ITabStripTabs::DeselectAll
OLEDragImageStyleConstants OLEDragImageStyle
getset

Specifies the appearance of the OLE drag images generated by the control

Retrieves or sets the appearance of the OLE drag images generated by the control. Any of the values defined by the OLEDragImageStyleConstants enumeration is valid.

See Also
SupportOLEDragImages, OLEDrag, OLEDragImageStyleConstants
VARIANT_BOOL OwnerDrawn
getset

Specifies whether the tabs are drawn by the application instead of the control

Retrieves or sets whether your application draws the tabs itself. If set to True, the control will fire the OwnerDrawTab event each time a tab must be drawn. If set to False, the control will draw the tabs itself.

See Also
_ITabStripEvents::OwnerDrawTab
VARIANT_BOOL ProcessContextMenuKeys
getset

Specifies whether the ContextMenu event can be invoked using the keyboard

Retrieves or sets whether the control fires the ContextMenu event if the user presses [SHIFT]+[F10] or [WINDOWS CONTEXTMENU]. If set to True, the event is fired; otherwise not.

See Also
_ITabStripEvents::ContextMenu
VARIANT_BOOL RaggedTabRows
getset

Specifies whether tabs are stretched

Retrieves or sets whether tabs are stretched so that each tab row in a multi-row control fills up the control's whole width. If set to False, the tabs are stretched; otherwise not.

See Also
MultiRow, UseFixedTabWidth
RegisterForOLEDragDropConstants RegisterForOLEDragDrop
getset

Controls the control's behavior in drag'n'drop operations

Retrieves or sets whether the control is registered as a target for OLE drag'n'drop. Any of the values defined by the RegisterForOLEDragDropConstants enumeration is valid.

See Also
AllowDragDrop, SupportOLEDragImages, _ITabStripEvents::OLEDragEnter, RegisterForOLEDragDropConstants
RightToLeftConstants RightToLeft
getset

Controls the control's right-to-left features

Enables or disables bidirectional features. Any combination of the values defined by the RightToLeftConstants enumeration is valid.

Attention
Setting or clearing the rtlLayout flag at runtime leads to drawing glitches.
See Also
RightToLeftConstants
VARIANT_BOOL ScrollToOpposite
getset

Controls the arrangement of the control's tabs

Retrieves or sets whether unneeded tabs scroll to the opposite side of the control when a tab is selected. If set to True, tabs scroll to the opposite side; otherwise not.

Remarks
If this property is set to True while the MultiRow property is set to False, the MultiRow property will be changed to True.
If this property is set to True while the Style property is set to sButtons or sFlatButtons, the Style property will be changed to sTabs.
Attention
This property can't be changed at runtime.
See Also
MultiRow, Style, TabPlacement
VARIANT_BOOL ShowButtonSeparators
getset

Controls how tabs are visually separated

Retrieves or sets whether the control draws separator lines between the tabs if the Style property is set to sFlatButtons. If set to True, separators are drawn; otherwise not.

See Also
Style
VARIANT_BOOL ShowDragImage
getset

Controls the visibility of the control's drag image

Retrieves or sets whether the drag image is currently visible or hidden. If set to True, it is visible; otherwise it is hidden.

See Also
hDragImageList, SupportOLEDragImages, _ITabStripEvents::DragMouseMove
VARIANT_BOOL ShowToolTips
getset

Specifies whether the control displays any tooltips

Enables or disables tooltips. If set to True, the control displays tab-specific tooltips; otherwise not.

Attention
This property can't be changed at runtime.
See Also
hWndToolTip, _ITabStripEvents::TabGetInfoTipText
StyleConstants Style
getset

Controls the general appearance of the control's tabs

Retrieves or sets the tabs' style. Any of the values defined by the StyleConstants enumeration is valid.

Remarks
If this property is set to sButtons or sFlatButtons while the ScrollToOpposite property is set to True, the ScrollToOpposite property will be changed to False.
Changing this property at runtime leads to drawing glitches if the control is themed.
See Also
Appearance, BorderStyle, MultiRow, ScrollToOpposite, TabPlacement, StyleConstants
VARIANT_BOOL SupportOLEDragImages
getset

Controls the control's behavior in drag'n'drop operations

Retrieves or sets whether the control creates an IDropTargetHelper object, so that a drag image can be displayed during OLE drag'n'drop. If set to True, the control creates the object; otherwise not.

Remarks
Requires shell32.dll version 5.0 or higher.
See Also
RegisterForOLEDragDrop, hHighResImageList, ShowDragImage, OLEDragImageStyle, IDropTargetHelper
TabBoundingBoxDefinitionConstants TabBoundingBoxDefinition
getset

Specifies which parts of a tab are handled as such

Retrieves or sets the parts of a tab that get handled as such if firing any kind of mouse event. Any combination of the values defined by the TabBoundingBoxDefinitionConstants enumeration is valid. E. g. if set to tbbdTabIcon, the tsTab parameter of the MouseMove event will identify the tab only if the mouse cursor is located over the tab's icon; otherwise (e. g. if the cursor is located over the tab's text) it will be Nothing.

See Also
HitTest, TabBoundingBoxDefinitionConstants
TabCaptionAlignmentConstants TabCaptionAlignment
getset

Controls the alignment of the tabs' captions

Retrieves or sets the alignment of the tabs' captions. Any of the values defined by the TabCaptionAlignmentConstants enumeration is valid.

Remarks
This property is ignored if the UseFixedTabWidth property is set to False.
See Also
UseFixedTabWidth, ITabStripTab::IconIndex, TabCaptionAlignmentConstants
OLE_YSIZE_PIXELS TabHeight
getset

Specifies all tabs' height

Retrieves or sets the tabs' height in pixels.

See Also
FixedTabWidth, MinTabWidth, DisplayAreaHeight
TabPlacementConstants TabPlacement
getset

Controls the arrangement of the control's tabs

Retrieves or sets the side of the control at which the tabs are displayed. Any of the values defined by the TabPlacementConstants enumeration is valid.

Remarks
If this property is set to tpLeft or tpRight while the MultiRow property is set to False, the MultiRow property will be changed to True.
Attention
This property can't be changed from or to tpLeft or tpRight at runtime.
See Also
MultiRow, Style, TabPlacementConstants
ITabStripTabs Tabs
get

Retrieves the control's tabs

Retrieves a collection object wrapping the tabstrip tabs.

Remarks
This property is read-only.
See Also
ITabStripTabs
VARIANT_BOOL UseFixedTabWidth
getset

Specifies whether all of the control's tabs are the same width

Retrieves or sets whether all tabs are the same width. If set to True, the tabs are the same width; otherwise not.

See Also
FixedTabWidth, RaggedTabRows, TabCaptionAlignment
VARIANT_BOOL UseSystemFont
getset

Specifies whether the control uses the system font

Retrieves or sets whether the control uses the MS Shell Dlg font (which is mapped to the system's default GUI font) or the font specified by the Font property. If set to True, the system font; otherwise the specified font is used.

See Also
Font
BSTR Version
get

Retrieves the control's version

Remarks
This property is read-only.
OLE_YSIZE_PIXELS VerticalPadding
getset

Controls the tabs' appearance

Retrieves or sets the amount of space (padding) above and below each tab's icon and label in pixels.

See Also
HorizontalPadding, ITabStripTab::IconIndex, ITabStripTab::Text