Microsoft Visual C++ MFC
FunctionX Press FunctionX C++ Visual C++/CLI Visual C++.NET C++Builder Win32 C# Visual C# Visual Basic ASP.NET (C#)
Microsoft Visual C++/MFC
Microsoft Visual C++ MFC

Microsoft Visual C++ is a programming environment used to create computer applications for the Microsoft Windows family of operating systems. To assist it, the Microsoft Foundation Class Library, or MFC, was created as an adaptation of the Win32 library to use in Microsoft Visual Studio.

This web site provides lessons and links on how to exploit the MFC library, including its use in Microsoft Visual Studio and its implementation of the C/C++ programming language.

 
 
 
C++ For MFC
1: Introduction to MSVC
2: Introduction to C++ Projects
3: Introduction to Values
4: Numeric Values
        

Fundamentals

File Processing

01::Introduction to Microsoft Visual C++/MFC Drives
02::Introduction to MFC Applications Archiving
03::Accessories for Applications and Windows Directories
04::Introduction to Dialog Boxes C File Processing
05::Managing Dialog Boxes MFC Standard I/O
  The File Dialog Box
  The Open With Dialog Box
 

Windows Controls

Introduction to Windows Controls
Managing Windows Controls
Animation Bitmap Button Button Check Boxes
Color Dialog Box Combo Boxes Command Button Date Picker
Edit Box Font Dialog Box Group Box Image Editor
Image Lists List Box Masked Edit Control MFC Button
MFC Color Dialog Box Month Calendar Picture Progress Bar
Progress Control Radio Buttons Rich Edit Sliders (Track Bars)
Spin Control Static Text Timer Time Picker
    Up-Down Control  

Dialog Boxes

Wizard Pages Message Boxes
Property Sheets & Property Pages  
MFC Property Sheets & Property Pages  
   
 

Collections

CArray
Linked Lists
Serialization

Topics

Strings Tick Counter


 

Studio Windows

Properties MFC Class Wizard
  
 
        
 
Fundamentals
 
Messages and Events
Frames Fundamentals
Windows Resources
Characteristics of Windows Frames
Fundamentals of Windows Controls
Forms
Control Design
 

 

 

 
 
Archives
Fundamentals Resources Dialog Boxes
Introduction to C++ Mini Frame Dialog Bars
Menus  
  Toolbars  
  Status Bars  
 
Controls
List Control Tree Control Scroll Bar File Dialog Progress Bar
    Picture Clip    
 
GDI Fundamentals GDI Objects GDI Topics Bitmaps
Introduction Colors Meta Files Display (Using Resource)
Lines Fonts Flicker Free Display (From a File)
Polylines Pens Trajectory Recognition Display in a View
Polygons Brushes As a Patterned Brush
Rectangles/Squares Bitmaps
Ellipses/Circles Drawing Text
Curves Coordinate System
 
File Processing Printing Collections
Archiving Introduction  
Using the Common Dialogs Print Dialog A List of Strings Class
C++ Serialization Using Document/View A List of Objects Class
Using CDocument Doc/View Architecture  
Print Preview Using a SQL Server Table 
The Print Setup Dialog Box  
 
Views Views Topics Libraries
Introduction to Views Introduction
CTreeView Static Libraries With MFC Static Libraries With MFC
CListView Win32 Static Libraries MFC Static Libraries
Form View Win32 Static DLL Win32 Static DLL
CScrollView Win32 DLL Win32 DLL
CEditView Module Definition File Module-Definition File
CRichEditView DLL Explicit Call DLL Explicit Call
 
 
 

Microsoft Foundation Class Library

   
    MFC Fundamentals
 
 
 
     General Articles
About this site
Visual C++ Spoiled in .NET
Inline Assembly: Add 2 Values
     Controls-Related Articles
These are topics of ways of using Windows controls but that don't fit in the How-To section
Message Boxes Currency In Dialog
Menu Issues Command Line
List View In SDI 2 Tree View In SDI
Tree View In Dialog GDI Coordinate Systems
MS Access Table Wizard Simulation
     MFC Classes
Techniques of using the classes of the MFC library.
RichEdit Slider
Spin Control Rich Edit
List Box Rich Text

 

     How To (MFC)
How to talk on the phone while you are driving? Don't do it. If you want to make a phone call that cannot wait, please stop the car and park on the site. Then call whoever you need to. It is better to waste a few minutes safely than to jeopardize yours and other people's lives for a lifetime!!! These are tips and tricks you can apply to MFC controls to get a certain behavior
Create a Simple Window
Create a Popup Window
Call A Dlg From An SDI/MDI
Call A Dialog From A Dialog
Create a Floating Window
Create a Mini Frame-Based Application
Remove an Occurrence in a String
Implement Radio Buttons
Create a Property Sheet-Based Application
Implement Property Sheet Buttons
Implement Wizard Buttons
Create a List View In a Dialog
Create a List View In an SDI 1
Display a Bitmap
Transfer data from one dialog box to another
Launch an Application
Display a Context Menu on a Control
Create a border-less, title bar-less, maximized dialog box
Change a Cursor in a Dialog Box
Change the Icon of a Dialog Box
Store Values in the Registry
 
 
 
Articles
Introduction to CRunTime
Introduction to Threading

 

 

 

 

 

   

Applications

Man It is hardly disputed that experience in computer programming comes from writing various programs. The goal of this section (including this site and our ebook) is to provide as various examples as possible. This section contains small applications that illustrate how to combine various MFC controls to implement a particular functionality
This section gives examples of using various Windows control with each application illustrating one particular control.
Notes
This example shows a technique of changing the font of a CEditView-based application instead of using the default.
Color Changer
This example demonstrates a simplistic way to use the scroll events of a dialog box. It uses three track bars to change or update the background color of a static control.
Net Price Calculation
This is a good example of edit box 101 showing how to display numbers in edit boxes.
Tick Counter
This is a technique of calling the Win32's GetTickCount() function to find out how long a computer and/or an application has (have) been on.
Time Sheet: One Shift (Combo Boxes)
This is one-shift time sheet that uses combo boxes instead of edit boxes. The idea is to reduce the likelihood of some mistakes, such as specifying a starting time that occurs after the end time.
Time Sheet: One Shift (Time Picker)
This time sheet also allows the user to select time instead of typing it. This one uses the Time Picker control.
Displaying Bitmaps
This is demonstration of how to display and change the pictures in a control positioned on a dialog box. In this case the pictures display on a static control and the picture changes if the user selects a certain value in a combo box.
Body Monitor
This is another combination of timer and progress bar. This example demonstrates the use of various independent timers in the same dialog box. Each timer gets a random value and uses it to update the value of its corresponding progress bar.
Column Chart
This example uses some values of controls that are positioned on a dialog bar. The values are then used to draw a type of column chart.
Deskpad (Revised)
This is a type of introduction to the CRichEditView and its CRichEditCtrl control.
This section is made of applications that each uses various controls.
Wake Me Up
This application uses MCI to simulate a clock radio but it is used to play a CD when the set time occurs.
College Park Auto-Shop
This is an application that relies on the MFC's file processing to process customers' orders for a car repair business.
College Park Auto-Shop
This is a Microsoft SQL Server Desktop Database (MSDE) database used in an MFC application. The connection is done through an ODBC Data Source. To adapt it to MySQL, make sure that, all you have to do is download the MySQL ODBC Connector.
Georgetown Cleaning Services
This application applies the DatePicker, the TimePicker and the combo box controls to simulate a dry cleaning business.
Payroll
This application is primarily used to take advantage of the date picker control. Meanwhile, it is used to simulate the calculation of overtime from a time sheet.
Clarksville Ice Cream
This application reviews the features of a combo box by simulating an ice cream shop.
Windows Explorer
This example shows how to create a type of Windows Explorer application using a CTreeView class in a left frame and a CListView class in the right frame.
Compound Interest
This is a good example of starting with radio buttons. It calculates the amount of money paid on a loan depending on the frequency of calculation.
Car Inventory 1

This example demonstrates techniques of using changing pictures of a static control in response to the user using another control, in this case a track bar.

Car Inventory 2
This application implements a tree control in a dialog box, reviewing how to create it and use icons on it.
Danilo Pizza
This application retrieves the values of radio buttons, check boxes, and text boxes to perform some operations live. That is, the user doesn't have to click a Calculate, a Submit, or an Apply button: as soon as the value of a control changes, the calculation is automatically updated.
CD Publisher
This demonstrates the use of a spin button to increase or decrease the values by clicking one of the buttons of the control.
Login Dialog Box
This example uses file processing to create a dialog box that presents itself when an application starts. The user must provide a valid username and password in order to access the application.
Screen Saver Simulation
This example simply shows how to continuously draw some geometric figures on the screen in response to a timer ticking.
Pledge Distribution
This is an example of changing the range of values of spin buttons in response to some action by the user. Three spin buttons are created an synchronized while the application is running.
Progressive Clock
This example uses a timer to display the current time of the computer by updating three progress bars in a dialog box.
 

I have written an electronic book that contains some of the material on this site and more. It addresses MFC programming and Windows controls programming in a unique, detail-oriented, and friendly format. I am sure you will highly benefit from it.
You can purchase it
Other FunctionX Press books
Support Site
A separate ebook that covers Microsoft Visual C++ .NET and the .NET Framework is also available for purchase.
 
Products
Contact
Related Sites
Win32 | C++ | C# | C++Builder 6 | Microsoft SQL Server | Visual Basic .NET | SQL | Microsoft Access | Visual Basic 6
Last Update:  Tuesday, September 06, 2011 21:52
Copyright © 1998-2011 FunctionX
Links
Samples/Downloads