Microsoft Foundation Class Library (MFC)

The following MFC features are new for Visual C++ 6.0.

For MFC issues that may affect porting to Visual C++ 6.0, see Changes from MFC Version 4.22.

Active Document Containment

Active Document Containment provides a single frame in which to work with documents, instead of requiring you to create and use multiple application frames for each document type. It differs from basic OLE technology in that OLE works with embedded objects within a compound document in which only a single piece of content can be active. With Active Document Containment, you activate an entire document, that is, an entire application, including associated menus and toolbars, within the context of a single frame. AppWizard automates the MFC coding required for Active Document Containment. Active Document Containment is implemented by using the new class COleDocObjectItem.

Dynamic HTML Control with CHtmlView

A new MFC class, CHtmlView, enables you to host Dynamic HTML within your MFC applications. CHtmlView allows your application's view to display HTML pages that contain Dynamic HTML just as a Web browser would display them. CHtmlView provides many browser features, including a history list, favorites (bookmarks), and security features. See Web Browser-Style Applications.

Internet Explorer 4.0 Common Controls

MFC provides support for the latest Internet Explorer 4.0 common controls in classes such as CComboBoxEx, CDateTimeCtrl, CIPAddressCtrl, and CMonthCalCtrl. You can access these controls from the Controls toolbar in the Dialog editor. In addition to these new control classes, new functionality was added to most of the existing MFC common control classes. These modifications include flat toolbars, image list support for several control types (such as header, toolbar, and status bar controls), and new attributes. These new properties are also supported in the Dialog editor controls.

MFC Classes — New or Updated

Class Control Status Description
CComboBoxEx Extended combo box New Extends the combo box control by providing support for image lists.
CDateTimeCtrl Date and time picker New Supports either an extended edit control, or a simple calendar interface control, that allows a user to choose a specific date or time value.
CHeaderCtrl Header Updated Supports drag-and-drop operations and bitmaps in a header control.
CHtmlView No New Supports a control for Web browsing within an application. The control supports Dynamic HTML in MFC.
CHttpServer No Updated Includes a new function for writing data to the server.
CHttpServerContext No Updated Includes new functions that provide control over the size of chunks written to the HTTP server.
CImageList Image list Updated Supports images used by other controls, for example, in header controls and list controls.
CInternetSession No Updated Supports setting cookies for a specified URL, returning cookies for a specified URL and all its parent URLs, and retrieving the variable specifying the length of the cookie stored in the buffer.
CIPAddressCtrl Address New Supports an edit box for manipulating an Internet Protocol (IP) address.
CListCtrl List Updated Supports the grouping of items using working areas. Also supports virtual list views.
CMenu No Updated Supports assigning or retrieving a default menu item on a specified menu, and retrieving information about a menu item.
CMonthCalCtrl Month calendar New Supports a simple calendar interface control that allows a user to select a date.
COleClientItem No Updated Contains a new function that retrieves a handle to an icon associated with the server of a particular CLSID.
COleDBRecordView No New Provides MFC OLE DB support for form views.
COleDocObjectItem No New Supports active document containment.
COleDateTime No Updated Supports converting time information stored in the object to a Win32-compatible SYSTEMTIME structure.
CProgressCtrl Progress Updated Supports smooth and vertical styles for progress controls.
CPropertySheet No Updated Supports property sheets with stacked or scrolling tabs.
CPropertySheetEx No New Supports the Wizard97 style of property sheets, available with Windows 98 and Windows NT 5.0.
CPropertyPageEx No New Supports the Wizard97 style of property pages, available with Windows 98 and Windows NT 5.0.
CReBar No New Supports a toolbar that can contain additional child windows in the form of controls.
CRebarCtrl Rebar New Implements the internal control of the CRebar object.
CSliderCtrl Slider Updated Supports ToolTips in a slider control and additional slider control styles.
CSpinButtonCtrl Spin button Updated Supports 32-bit ranges in a spin button control.
CStatusBar No Updated Supports ToolTips, icons, and background color in a status bar.
CStatusBarCtrl Status bar Updated Implements the internal control of the CStatusBar object.
CString No Updated Supports enhanced string finding, replacing, removing, inserting, deleting, and formatting.
CTabCtrl Tab Updated Supports new styles for tab focus and appearance. Also supports inserting new tabs into an existing tab control.
CTime No Updated Supports converting time information stored in the object to a Win32-compatible SYSTEMTIME structure.
CToolBar No Updated Supports Internet Explorer 4.0 flat and transparent toolbar styles.
CToolBarCtrl Toolbar Updated Implements the internal control of the CToolBar object.
CToolTipCtrl Tool tip Updated Implements updating of a ToolTip and its attributes.
CTreeCtrl Tree Updated Supports check boxes and automatic single-node expansion in a tree control.

For fixes and porting considerations, see Changes from MFC version 4.22 in the Visual C++ Programmer's Guide.

MFC Globals — New

MFC contains two new globals. AfxCheckError tests the passed SCODE to see if it is an error. This function can be used to check the return values of calls to OLE functions in your application. AfxDumpStack indicates the target of the dump output. This function can be used to generate an image of the current stack.

Wizard97 Style for Property Sheets

Wizard97 is a new wizard style for property sheets and property pages for Windows 98 and Windows NT 5.0. MFC implements this support in two new classes, CPropertySheetEx and CPropertyPageEx. These new classes support structures that are not compatible with CPropertySheet and CPropertyPage. The Wizard97 styles support background bitmaps and wide title headers, including subheaders, in a property page.

MFC OLE DB Class Added

The new COleDBRecordView class is an optional MFC class to wrap the OLE DB Consumer and Provider templates. This class incorporates the OLE DB templates into MFC. See AppWizard Enhancements and Data Access Support in the ATL Object Wizard.

MFC Performance Tuning

The static link size of the MFC library has been tuned.

New MFC Technical Notes

There are two new MFC technical notes: TN070: MFC Window Class Names and TN071: MFC IOleCommandTarget Implementation.

Back to What's New Overview