Classes (MFC Feature Pack)

[This documentation is for preview only, and is subject to change in later releases. Blank topics are included as placeholders.]

The following MFC classes are included in the MFC Feature Pack.

In This Section




The AFX_GLOBAL_DATA structure contains fields and methods that are used to manage the framework or customize the appearance and behavior of your application.

CAutoHideDockSite Class

The CAutoHideDockSite extends the CDockSite Class to implement auto-hide dock panes.

CBasePane Class

Base class for all panes in the MFC Feature Pack.

CBaseTabbedPane Class

Extends the functionality of the CDockablePane Class to support the creation of tabbed windows.

CContextMenuManager Class

The CContextMenuManager object manages shortcut menus, also known as context menus.

CDialogEx Class

The CDialogEx class specifies the background color and background image of a dialog box.

CDockablePane Class

Implements a pane that can either be docked in a dock site or included in a tabbed pane.

CDockablePaneAdapter Class

Provides docking support for CWnd-derived panes.

CDockingManager Class

Implements the core functionality that controls docking layout in a main frame window.

CDockingPanesRow Class

Manages a list of panes that are located in the same horizontal or vertical row (column) of a dock site.

CDockSite Class

Provides functionality for arranging panes that are derived from the CPane Class into sets of rows.

CDrawingManager Class

The CDrawingManager class implements complex drawing algorithms.

CFrameImpl Class

The CFrameImpl class handles toolbar customization for the following frame window classes: CFrameWndEx Class, CMDIFrameWndEx Class, and COleIPFrameWndEx Class.

CFrameWndEx Class

The CFrameWndEx class implements the functionality of a Windows single document interface (SDI) overlapped or popup frame window, and provides members for managing the window. It extends the CFrameWnd class.

CGlobalUtils Class


CKeyboardManager Class

Manages shortcut key tables for the main frame window and child frame windows.

CMDIChildWndEx Class

The CMDIChildWndEx class provides the functionality of a Windows multiple document interface (MDI) child window. It extends the functionality of CMDIChildWnd Class. The framework requires this class when an MDI application uses certain MFC classes.

CMDIFrameWndEx Class

Extends the functionality of CMDIFrameWnd, a Windows Multiple Document Interface (MDI) frame window.

CMDITabInfo Class

The CMDITabInfo class is used to pass parameters to CMDIFrameWndEx::EnableMDITabbedGroups method. Set members of this class to control the behavior of MDI tabbed groups.

CMenuImages Class

Provides the functionality to display predefined images such as close buttons, maximize buttons, radio buttons, and arrows.

CMenuTearOffManager Class

Manages tear-off menus. A tear-off menu is a menu on the menu bar. The user can remove a tear-off menu from the menu bar, causing the tear-off menu to float.

CMFCAcceleratorKey Class

A helper class that implements virtual key mapping and formatting.

CMFCAcceleratorKeyAssignCtrl Class

The CMFCAcceleratorKeyAssignCtrl class extends the CEdit Class to support extra system buttons such as ALT, CONTROL, and SHIFT.

CMFCAutoHideButton Class

A button that displays or hides a CDockablePane Class that is configured to hide.

CMFCBaseTabCtrl Class

The CMFCBaseTabCtrl class implements the base functionality for tabbed windows.

CMFCButton Class

The CMFCButton class adds functionality to the CButton class such as aligning button text, combining button text and an image, selecting a cursor, and specifying a tool tip.

CMFCCaptionBar Class

A CMFCCaptionBar object is a control bar that can display three elements: a button, a text label, and a bitmap. It can only display one element of each type at a time. You can align each element to the left or right edges of the control or to the center. You can also apply a flat or 3D style to the top and bottom borders of the caption bar.

CMFCCaptionButton Class

The CMFCCaptionButton class implements a button that is displayed on the caption bar for a docking pane or a mini-frame window. Typically, the framework creates caption buttons automatically.

CMFCColorBar Class

The CMFCColorBar class represents a docking control bar that can select colors in a document or application.

CMFCColorButton Class

The CMFCColorButton and CMFCColorBar Class classes are used together to implement a color picker control.

CMFCColorDialog Class

The CMFCColorDialog class represents a color selection dialog box.

CMFCColorMenuButton Class

The CMFCColorMenuButton class supports a menu command or a toolbar button that starts a color picker dialog box.

CMFCColorPickerCtrl Class

The CMFCColorPickerCtrl class provides functionality for a control that is used to select colors.

CMFCDesktopAlertDialog Class

The CMFCDesktopAlertDialog class is used together with the CMFCDesktopAlertWnd Class to display a custom dialog in a popup window.

CMFCDesktopAlertWnd Class

The CMFCDesktopAlertWnd class implements the functionality of a modeless dialog box which appears on the screen to inform the user about an event.

CMFCDesktopAlertWndInfo Class

The CMFCDesktopAlertWndInfo class is used with the CMFCDesktopAlertWnd Class. It specifies the controls that are displayed if the desktop alert window pops up.

CMFCDragFrameImpl Class

The CMFCDragFrameImpl class draws the drag rectangle that appears when the user drags a pane in the standard dock mode.

CMFCDropDownToolBar Class

A toolbar that appears when the user presses and holds a top-level toolbar button.

CMFCDropDownToolbarButton Class

A type of toolbar button that behaves like a regular button when it is clicked. However, it opens a drop-down toolbar (CMFCDropDownToolBar Class if the user presses and holds the toolbar button down.

CMFCEditBrowseCtrl Class

The CMFCEditBrowseCtrl class supports the edit browse control, which is an editable text box that optionally contains a browse button. When the user clicks the browse button, the control performs a custom action or displays a standard dialog box that contains a file browser or a folder browser.

CMFCFontComboBox Class

The CMFCFontComboBox class creates a combo box control that contains a list of fonts.

CMFCFontInfo Class

The CMFCFontInfo class describes the name and other attributes of a font.

CMFCHeaderCtrl Class

The CMFCHeaderCtrl class supports sorting multiple columns in a header control.

CMFCImageEditorDialog Class

The CMFCImageEditorDialog class supports an image editor dialog box.

CMFCKeyMapDialog Class

The CMFCKeyMapDialog class supports a control that maps commands to keys on the keyboard.

CMFCLinkCtrl Class

The CMFCLinkCtrl class displays a button as a hyperlink and invokes the link's target when the button is clicked.

CMFCListCtrl Class

The CMFCListCtrl class extends the functionality of CListCtrl Class class by supporting the advanced header control functionality of the CMFCHeaderCtrl Class.

CMFCMaskedEdit Class

The CMFCMaskedEdit class supports a masked edit control, which validates user input against a mask and displays the validated results according to a template.

CMFCMenuBar Class

A menu bar that implements docking.

CMFCMenuButton Class

A button that displays a pop-up menu and reports on the user's menu selections.

CMFCOutlookBar Class

A tabbed pane with the visual appearance of the Navigation Pane in Microsoft Outlook 2000 or Outlook 2003. The CMFCOutlookBar object contains a CMFCOutlookBarTabCtrl Class object and a series of tabs. The tabs can be either CMFCOutlookBarPane Class objects or CWnd-derived objects. To the user, the Outlook bar appears as a series of buttons and a display area. When the user clicks a button, the corresponding control or button pane is displayed.

CMFCOutlookBarPane Class

A control derived from CMFCToolBar Class that can be inserted into an Outlook bar (CMFCOutlookBar Class). The Outlook bar pane contains a column of large buttons. The user can scroll up and down the list of buttons if it is larger than the pane. When the user detaches an Outlook bar pane from the Outlook bar, it can float or dock in the main frame window.

CMFCOutlookBarTabCtrl Class

A tab control that has the visual appearance of the Navigation Pane in Microsoft Outlook.

CMFCPopupMenu Class

Implements Windows pop-up menu functionality and extends it by adding features such as tear-off menus and tooltips.

CMFCPopupMenuBar Class

A menu bar embedded into a pop-up menu.

CMFCPropertyGridColorProperty Class

The CMFCPropertyGridColorProperty class supports a property list control item that opens a color selection dialog box.

CMFCPropertyGridCtrl Class

Supports an editable property grid control that can display properties in alphabetical or hierarchical order.

CMFCPropertyGridFileProperty Class

The CMFCPropertyGridFileProperty class supports a property list control item that opens a file selection dialog box.

CMFCPropertyGridFontProperty Class

The CMFCPropertyGridFileProperty class supports a property list control item that opens a font selection dialog box.

CMFCPropertyGridProperty Class

A CMFCPropertyGridProperty object represents a list item in a property list control.

CMFCPropertyPage Class

The CMFCPropertyPage class supports the display of pop-up menus on a property page.

CMFCPropertySheet Class

The CMFCPropertySheet class supports a property sheet where each property page is denoted by a page tab, a toolbar button, a tree control node, or a list item.

CMFCPropertySheetCategoryInfo Class

The CMFCPropertySheetCategoryInfo class is used internally.

CMFCReBar Class

A CMFCReBar object is a control bar that provides layout, persistence, and state information for rebar controls.

CMFCRibbonApplicationButton Class

Implements a special button located in the top-left corner of the application window. When clicked, the button opens a menu that usually contains common File commands like Open, Save, and Exit.

CMFCRibbonBaseElement Class

The CMFCRibbonBaseElement class is the base class for all elements that you can add to a ribbon bar. Examples of ribbon elements are ribbon buttons, ribbon check boxes, and ribbon combo boxes.

CMFCRibbonButton Class

The CMFCRibbonButton class implements buttons that you can position on ribbon bar elements such as panels, Quick Access Toolbars, and pop-up menus.

CMFCRibbonButtonsGroup Class

The CMFCRibbonButtonsGroup class allows you to organize a set of ribbon buttons into a group. All buttons in the group are directly adjacent to each other horizontally and enclosed in a border.

CMFCRibbonCategory Class

The CMFCRibbonCategory class implements a ribbon tab that contains a group of ribbon panels.

CMFCRibbonCheckBox Class

The CMFCRibbonCheckBox class implements a check box that you can add to a ribbon panel, Quick Access Toolbar, or popup menu.

CMFCRibbonColorButton Class

The CMFCRibbonColorButton class implements a color button that you can add to a ribbon bar. The ribbon color button displays a drop-down menu that contains one or more color palettes.

CMFCRibbonComboBox Class

The CMFCRibbonComboBox class implements a combo box control that you can add to a ribbon bar, a ribbon panel, or a ribbon popup menu.

CMFCRibbonContextCaption Class

Implements a colored caption that appears at the top of a ribbon category or a context category.

CMFCRibbonEdit Class

Implements an edit control that is positioned on a ribbon.

CMFCRibbonFontComboBox Class

Implements a combo box that contains a list of fonts. You place the combo box on a ribbon panel.

CMFCRibbonGallery Class

Implements Office 2007-style ribbon galleries.

CMFCRibbonGalleryMenuButton Class

Implements a ribbon menu button that contains ribbon galleries.

CMFCRibbonLabel Class

Implements a non-clickable text label for a ribbon.

CMFCRibbonLinkCtrl Class

Implements a hyperlink that is positioned on a ribbon. The hyperlink opens a Web page when you click it.

CMFCRibbonMainPanel Class

Implements a ribbon panel that displays when you click the CMFCRibbonApplicationButton.

CMFCRibbonMiniToolBar Class

Implements a contextual popup toolbar.

CMFCRibbonPanel Class

Implements a panel that contains a set of ribbon elements. When the panel is drawn, it displays as many elements as possible, given the size of the panel.

CMFCRibbonProgressBar Class

Implements a control that visually indicates the progress of a lengthy operation.

CMFCRibbonSlider Class

The CMFCRibbonSlider class implements a slider control that you can add to a ribbon bar or ribbon status bar. The ribbon slider control resembles the zoom sliders that appear in Office 2007 applications.

CMFCRibbonStatusBar Class

The CMFCRibbonStatusBar class implements a status bar control that can display ribbon elements.

CMFCRibbonStatusBarPane Class

The CMFCRibbonStatusBarPane class implements a ribbon element that you can add to a ribbon status bar.

CMFCRibbonUndoButton Class

The CMFCRibbonUndoButton class implements a split button, a small button with a downward pointing triangle on the rightmost part of the main button. Users can click the triangle to display a drop-down list of their most recently performed actions. Users can then select one or more actions from the drop-down list. However, if the user clicks the button, only the last (the most recently added) action on the drop-down list is undone. You should populate the list with actions as the user performs them.

CMFCShellListCtrl Class

The CMFCShellListCtrl class provides Windows list control functionality and expands it by including the ability to display a list of shell items.

CMFCShellTreeCtrl Class

The CMFCShellTreeCtrl class extends CTreeCtrl Class functionality by displaying a hierarchy of Shell items.

CMFCSpinButtonCtrl Class

The CMFCSpinButtonCtrl class supports a visual manager that draws a spin button control.

CMFCStatusBar Class

The CMFCStatusBar class implements a status bar similar to the CStatusBar class. However, the CMFCStatusBar class has features not offered by the CStatusBar class, such as the ability to display images, animations, and progress bars; and the ability to respond to mouse double-clicks.

CMFCTabCtrl Class

The CMFCTabCtrl class provides functionality for a tab control. The tab control displays a dockable window with flat or three-dimensional tabs at its top or bottom. The tabs can display text and an image and can change color when active.

CMFCTabToolTipInfo Structure

This structure provides information about the MDI tab that the user is hovering over.

CMFCTasksPane Class

The CMFCTasksPane class implements a list of clickable items (tasks).

CMFCTasksPaneTask Class

The CMFCTasksPaneTask class is a helper class that represents tasks for the task pane control (CMFCTasksPane). The task object represents an item in the task group (CMFCTasksPaneTaskGroup). Each task can have a command that the framework executes when a user clicks on the task and an icon that appears to the left of the task name.

CMFCTasksPaneTaskGroup Class

The CMFCTasksPaneTaskGroup class is a helper class used by the CMFCTasksPane control. Objects of type CMFCTasksPaneTaskGroup represent a task group. The task group is a list of items that the framework displays in a separate box that has a collapse button. The box can have an optional caption (group name). If a group is collapsed, the list of tasks is not visible.

CMFCToolBar Class

The CMFCToolBar class resembles CToolBar Class, but provides additional support for user interface features. These include flat toolbars, toolbars with hot images, large icons, pager buttons, locked toolbars, rebar controls, text under images, background images, and tabbed toolbars. The CMFCToolBar class also contains built-in support for user customization of toolbars and menus, drag-and-drop between toolbars and menus, combo box buttons, edit box buttons, color pickers, and roll-up buttons.

CMFCToolBarButton Class

Provides button functionality to toolbars.

CMFCToolBarComboBoxButton Class

A toolbar button that contains a combo box control (CComboBox Class).

CMFCToolBarComboBoxEdit Class

The framework uses the CMFCToolBarComboBoxEdit class to create a toolbar button that behaves like an editable combo box control.

CMFCToolBarDateTimeCtrl Class

A toolbar button that contains a date and time picker control (CMFCToolBarDateTimeCtrlImpl).

CMFCToolBarEditBoxButton Class

A toolbar button that contains an edit control (CEdit Class).

CMFCToolBarFontComboBox Class

A toolbar button that contains a combo box control that enables the user to select a font from a list of system fonts.

CMFCToolBarFontSizeComboBox Class

A toolbar button that contains a combo box control that enables the user to select a font size.

CMFCToolBarImages Class

The images on a toolbar. The CMFCToolBarImages class manages toolbar images loaded from application resources or from files.

CMFCToolBarInfo Class

Contains the resource IDs of toolbar images in various states. CMFCToolBarInfo is a helper class that is used as a parameter of the CMFCToolBar::LoadToolBarEx method.

CMFCToolBarMenuButton Class

A toolbar button that contains a pop-up menu.

CMFCToolBarsCustomizeDialog Class

A modeless tab dialog box (CPropertySheet Class) that enables the user to customize the toolbars, menus, keyboard shortcuts, user-defined tools, and visual style in an application. Typically, the user accesses this dialog box by selecting Customize from the Tools menu.

CMFCToolTipCtrl Class

An extended tooltip implementation based on the CToolTipCtrl Class. A tooltip based on the CMFCToolTipCtrl class can display an icon, a label, and a description. You can customize its visual appearance by using a gradient fill, custom text and border colors, bold text, rounded corners, or a balloon style.

CMFCToolTipInfo Class

Stores information about the visual appearance of tooltips.

CMFCVisualManager Class

Provides support for changing the appearance of your application at a global level. The CMFCVisualManager class works together with a class that provides instructions to draw the GUI controls of your application using a consistent style. These other classes are referred to as visual managers and they inherit from CMFCBaseVisualManager.

CMFCVisualManagerOffice2003 Class

CMFCVisualManagerOffice2003 gives an application a Microsoft Office 2003 appearance.

CMFCVisualManagerOffice2007 Class

CMFCVisualManagerOffice2007 gives an application a Microsoft Office 2007 appearance.

CMFCVisualManagerVS2005 Class

CMFCVisualManagerVS2005 gives an application a Microsoft Visual Studio 2005 appearance.

CMFCVisualManagerWindows Class

CMFCVisualManagerWindows mimics the appearance of Microsoft Windows XP or Microsoft Vista when the user selects a Windows XP or Vista theme.

CMFCWindowsManagerDialog Class

The CMFCWindowsManagerDialog object enables a user to manage MDI child windows in a MDI application.

CMouseManager Class

Allows a user to associate different commands with a particular CView object when the user double-clicks inside that view.

CMultiPaneFrameWnd Class

The CMultiPaneFrameWnd class extends CPaneFrameWnd Class. It can support multiple panes. Instead of a single embedded handle to a control bar, CMultiPaneFrameWnd contains a CPaneContainerManager Class object that enables the user to dock one CMultiPaneFrameWnd to another and dynamically create multiple floating, tabbed windows.

COleIPFrameWndEx Class

The COleIPFrameWndEx class implements an OLE container that supports the MFC Feature Pack. You must derive the in-place frame window class for your application from the COleIPFrameWndEx class, instead of deriving it from the COleIPFrameWndclass.

CPane Class

The CPane class is an enhancement of the CControlBar Class. If you are upgrading an existing MFC project, you need to replace all occurrences of CControlBar with CPane.

CPaneContainer Class

The CPaneContainer class is a basic component of the docking model implemented by MFC Feature Pack. An object of this class stores pointers to two docking panes or to two instances of CPaneContainer. It also stores a pointer to the divider that separates the panes (or the containers). By nesting containers inside containers, the framework can build a binary tree that represents complex docking layouts. The root of the binary tree is stored in a CPaneContainerManager object.

CPaneContainerManager Class

The CPaneContainerManager class manages the storage and display of the current docking layout.

CPaneDialog Class

The CPaneDialog class supports a modeless, dockable dialog box.

CPaneDivider Class

The CPaneDivider class divides two panes, divides two groups of panes, or separates a group of panes from the client area of the main frame window.

CPaneFrameWnd Class

Implements a mini-frame window that contains one pane. The pane fills the client area of the window.

CRecentDockSiteInfo Class

The CRecentDockSiteInfo class is a helper class that stores recent state information for the CPane Class.

CSettingsStore Class

Wraps Windows API functions, providing an object-oriented interface that you use to access the registry.

CShellManager Class

Implements several methods that enable you to work with pointers to identifier lists (PIDLs).

CSmartDockingInfo Class

Defines the appearance of smart docking markers.

CSplitterWndEx Class

Represents a customized splitter window.

CTabbedPane Class

Implements the functionality of a pane with detachable tabs.

CTabView Class

The CTabView class simplifies the use of the tab control class (CMFCTabCtrl) in applications that use MFC's document/view architecture.

CTooltipManager Class

Maintains runtime information about tooltips. The CTooltipManager class is instantiated one time per application.

CUserTool Class

A user tool is a menu item that runs an external application. The Tools tab of the Customize dialog box (CMFCToolBarsCustomizeDialog Class) enables the user to add user tools, and to specify the name, command, arguments, and initial directory for each user tool.

CUserToolsManager Class

Maintains the collection of CUserTool Class objects in an application. A user tool is a menu item that runs an external application. The CUserToolsManager object enables the user or developer to add new user tools to the application. It supports the execution of the commands associated with user tools, and it also saves information about user tools in the Windows registry.

CVSListBox Class

The CVSListBox class supports an editable list control.

CWinAppEx Class

CWinAppEx handles the application state, saves the state to the registry, loads the state from the registry, initializes application managers, and provides links to those same application managers.

See Also

Other Resources

Reference (MFC Feature Pack)