SftButton/DLL 3.0 - Button Control (Coming Soon)
SftTabs/DLL 7.0 - Tab Control (Coming Soon)
SftTree/DLL 7.5 - Tree Control
SftTree/DLL 8.0 - Tree Control (Coming Soon)
SftBox/OCX 5.0 - Combo Box Control
SftButton/OCX 3.0 - Button Control
SftMask/OCX 7.0 - Masked Edit Control
SftTabs/OCX 6.5 - Tab Control (VB6 only)
SftTree/OCX 7.5 - Tree Control
SftTree/DLL 7.5 - Tree Control
SftBox/OCX 5.0 - Combo Box Control
SftButton/OCX 3.0 - Button Control
SftMask/OCX 7.0 - Masked Edit Control
SftTabs/OCX 6.5 - Tab Control (VB6 only)
SftTree/OCX 7.5 - Tree Control
SftTree/NET 2.0 - Tree Control
The SftTabs/DLL Wizard uses several design property pages - Style, Tabs, ToolTips, Fonts, Colors, Class Info, Events and Control - to design a tab control layout and populate it with tabs. Settings made on these pages are reflected immediately in the sample tab control. When the desired layout has been achieved, the C and C++/MFC tabs produce the source code needed to create and initialize the tab control in an application. For detailed information about an individual setting, move the input focus to that control and hit F1.
The Style page controls the overall appearance of the tab control - the basic tab style, scrolling, the Minimize/Restore/Close buttons, tab and row layout, borders and label rendering.
| Label | Description |
|---|---|
| Style | Selects the basic tab control style. |
| Use exact window region | Uses an exact window region so the parent's background shows through the unused parts of a non-rectangular tab shape. |
| Use themes | Draws the control using the current Windows visual theme. |
| Scrollable tabs | Enables scrollable tabs (restricted to a single row); some styles do not support scrolling. |
| Scroll buttons | Options to hide the scroll buttons, hide them only when all tabs are visible, place them on the left or top, make them full tab size, or show a ragged edge for a truncated tab. |
| Button style / alignment (scroll) | Selects the button style and alignment used for the scroll buttons. |
| Minimize / Restore / Close buttons | Selects which of the Minimize, Restore and Close buttons are available on the control. |
| Enable buttons | Enables or disables the individual Minimize, Restore and Close buttons. |
| Close button generates WM_CLOSE | The Close button posts a WM_CLOSE message instead of sending a close notification. |
| Full size buttons | Makes the Minimize/Restore/Close buttons as large as a tab. |
| Alignment (close buttons) | Selects the alignment of the Minimize/Restore/Close buttons. |
| Fixed width tabs | Gives every tab the same width (or height for vertical rows) instead of sizing each tab to its label. |
| Fill rows completely | Fills each tab row completely to minimize margins. |
| Bold font for active tab | Draws the active tab's label in bold. |
| Tabs per row / Tab rows | Sets the number of tabs per row and the number of rows. |
| Allow all tabs to be inactive | Allows every tab to be deactivated at the same time. |
| Row indentation | Uses the style's automatic row indentation or an explicit pixel offset for a cascading multi-row layout. |
| Margins | Sets the left and right margins, or uses the style's built-in margin. |
| 3D border outline | Adjusts the control's colors for a 3D outline; turn it off on backgrounds unsuitable for 3D rendering. |
| Provide client area | Provides a client area for pages and child controls (not supported by all styles). |
| Multiline labels | Allows tab labels to contain line breaks. |
| Use drawing callback | Paints selected tabs through a drawing callback and generates the matching callback sample code. |
| Drop label if it doesn't fit | Omits a tab's label when it does not fit (best used with graphic tabs). |
| Show '...' if text truncated | Appends a trailing ellipsis to truncated label text. |
| Enable ToolTips | Displays the ToolTips defined on the ToolTips page. |
| Enable flyby highlights | Highlights a tab's label when the mouse cursor moves over it. |
| Show focus rectangle | Draws a focus rectangle around the active tab's label when the control has the input focus. |
The Tabs page edits the list of individual tabs and their per-tab properties, and adds, inserts or deletes tabs.
| Label | Description |
|---|---|
| Tab label | Click a tab label to edit its text; click elsewhere or press Return to finish. |
| Enabled / Hidden | Sets each tab's status - enabled or disabled, and visible or fully hidden. |
| Sample picture / alignment | Assigns a sample tab graphic and its alignment (an application supplies its own images at run time). |
| Active colors | The foreground and background colors (or a background gradient) used when the tab is active. |
| Inactive colors | The foreground and background colors (or a background gradient) used when the tab is not active, plus the flyby highlight color. |
| Client-area color | The client-area background color (or gradient) associated with the tab. |
| Use client-area color | Fills the frames of the rows behind the current row with each tab's client-area color. |
| Add / Insert / Delete | Adds a tab at the end, inserts a tab after the selected tab, or deletes the selected tab. |
| Copy colors | Copies a tab's active colors to its inactive colors, for the selected tab or for all tabs. |
The ToolTips page enables and edits the ToolTip text for the tabs and buttons.
| Label | Description |
|---|---|
| Enable ToolTips | Enables display of ToolTips for the tabs and for the scroll and Minimize/Restore/Close buttons. |
| ToolTips grid | Lists the ToolTip text for each tab and button; click an entry in the ToolTip Text column to change it. |
The Fonts page selects the font used throughout the tab control.
| Label | Description |
|---|---|
| Font | Selects the single font used for all tabs. |
The Colors page defines the named control-area colors and the background bitmaps for the tab control.
| Label | Description |
|---|---|
| Control area / Color | Select a control area, then view or change its color. |
| Inside / Outside background | Assigns or clears the inside and outside background bitmaps (illustrative only - the generated code declares them but does not load them). |
Based on the information entered on this page, the generated source code is adjusted to reflect the following settings:
| Label | Description |
|---|---|
| C variable name | The variable that holds the tab control's window handle in a C application. This field is not used for C++ applications. |
| C++ object name | The variable name for the C++ tab control object (CSftTabs) in the parent window. This field is not used for C applications. |
| Control ID | The ID used for the control in a DIALOG resource and as its child-window ID. |
| Tabbed dialog or window | Selects a tabbed dialog (CSftTabsDialog / CSftTabsPage) or a tabbed window (CSftTabsWindowSheet / CSftTabsWindowPage). |
| Dialog/resource or run time | Selects whether the control lives in a dialog or resource-based window, or is created at run time. |
| Sheet class / base class | The class name (and its base class) for the main window that contains the tab control. |
| Page class / base class | The class name (and its base class) used for the generated tab pages. |
All notifications generated by the tab control are displayed in a list as they occur. Interact with the sample tab control to populate the list. This is useful for understanding which notifications fire and when. The Clear All button clears the list.
The Control tab provides an immediate, read-only view of the SFTTABS_CONTROL structure for the current tab control. Every member is shown with the value taken from the sample tab control, and the display updates as changes are made on the other pages.
