Introduction to MFC Programming with Visual C++

by
Edition: 1st
Format: Paperback
Pub. Date: 1999-12-22
Publisher(s): Prentice Hall
  • Free Shipping Icon

    This Item Qualifies for Free Shipping!*

    *Excludes marketplace orders.

List Price: $73.49

Rent Book

Select for Price
There was a problem. Please try again later.

New Book

We're Sorry
Sold Out

Used Book

We're Sorry
Sold Out

eBook

We're Sorry
Not Available

How Marketplace Works:

  • This item is offered by an independent seller and not shipped from our warehouse
  • Item details like edition and cover design may differ from our description; see seller's comments before ordering.
  • Sellers much confirm and ship within two business days; otherwise, the order will be cancelled and refunded.
  • Marketplace purchases cannot be returned to eCampus.com. Contact the seller directly for inquiries; if no response within two days, contact customer service.
  • Additional shipping costs apply to Marketplace purchases. Review shipping costs at checkout.

Summary

bull; bull; Not just a "run-the-wizard, push-the-buttons" guide -- real MFC mastery! bull; Starts from ground zero: no object-oriented expertise required! bull; An important but simple example illustrations how MFC invokes your virtual functions. bull; Introduces MFC Document/View Architecture, program structure, and much more. bull; Includes more than 90 short programs illustrating collection classes, mouse and keyboard techniques, common controls, menus, and more. bull; Covers bitmap graphics and database access. Simply the most effective, thorough introduction to MFC you can find! If you really want to master MFC, there are no shortcuts, but there is one great book: Introduction to MFC Programming with Visual C++. Unlike many MFC books, this one doesn't start with Microsoft's AppWizard. Rather, it begins by giving you an in-depth grounding in the structure of MFC programs: an understanding that will serve you well in every program you write. Author Richard Jones also introduces the fundamentals of object-oriented programming with MFC and Visual C++, the essential concepts underlying MFC, the Document/View architecture, and much more. Once you understand how MFC really works, Jones helps you accomplish more than you ever imagined. You'll not only master MFC's common interface controls, but also database access, and much more. Introduction to MFC Programming with Visual C++ contains dozens of diagrams and programs-from to-the-point snippets to sizable programs designed to demonstrate powerful software engineering techniques. About the CD-ROM bull; bull; The accompanying CD-ROM contains all sample code from the book.

Author Biography

Richard Jones is Professor at Western Connecticut State University, and has been teaching MFC and Win32 programming for four years.

Table of Contents

Part 1 Object Concepts in Console Applications 1(59)
Using MFC Utility Classes in Console Applications
5(14)
Classes: A Review of Concepts
19(20)
Collections, CFiles, and Serializing Objects
39(20)
Part 2 Handcrafted MFC Windows Programs 59(122)
Event Handling: Keyboard and Mouse Input
63(30)
Device Context Attributes and Functions
93(20)
Mouse and Keyboard Techniques
113(30)
Using Window Controls
143(20)
Menus and Dialogs
163(18)
Part 3 AppWizard Applications With No Document 181(78)
The AppWizard And ClassWizard
185(14)
More on Menus, Toolbars, and Dialogs
199(18)
Timers and the XOR Draw Mode
217(14)
Bitmap Graphics
231(14)
Sending and Posting Messages
245(14)
Part 4 The Document / View Architecture 259(32)
Using The Document / View Architecture
261(18)
Database Processing
279(12)
Appendices 291(8)
Appendix A A Win32 Program
291(4)
Appendix B Using the Debugger
295(4)
Appendix C The Editor
299

Excerpts

Preface The 15 chapters in this book present you with a sequence of MFC topics, sample MFC pro-grams and activities. It is my conviction that if you carefully read the topics, study the programs, and do a reasonable number of the suggested exer-cises (yes, practice is necessary), then in about two months time you will feel comfortable writing win-dows programs in C++. Prerequisites Since this book does not cover C++, programming logic, and common algorithms, I assume that you already have a certain minimum level of program-ming experience, and a fairly sound knowledge of C++. Specifically, if you have had a 15-week pro-gramming course using C++ where you have used arrays, structures, and have created a few classes, I think that will constitute an appropriate amount of experience. One of the wildcard factors in learning C++ windows programming is the extent to which you simply enjoy the activity of programming. If you can sit and concentrate for three, four, or five hours working on a problem, then I think your success can be guaranteed. You definitely cannot dabble in MFC and expect any results. The Genesis of this Book Over the last four years I have taught windows pro-gramming (both Win32 programming and MFC programming) in a variety of contexts using at least five different textbooks. These books have ranged from 1300-page encyclopedias to 570 pages of App-Wizard- generated code. In each class I would invari-ably have handouts consisting of sample programs and diagrams. Not content with the available instructional material, I pulled together my "class handouts" dur-ing the winter break of ''98-''99, and wrote a 70-page, spiral-bound manual that contained 28 short and simple MFC programs--I still like the title: "Getting a Grip on MFC." The program listings were positioned on the right-hand side pages with accompanying discussion of programs on the preceding left-hand page. Since the page size was 8.5"x11", a good amount of pro-gram code and remarks could be put onto facing pages. This particular layout allowed the reader to gain a perspective on the entire program, and it also let the reader to focus on specific parts of the program. For my students, this booklet proved to have the right balance of program examples and discussion. I believe that a program illustrating a concept is much better than a page of text that describes a concept. That booklet was the genesis of this book. Topic Sequence Is Important Beside the many short, easy-to-understand program examples, another major organizational feature of the book is the sequence in which topics are introduced. When a new topic is introduced, you will have been adequately prepared for that topic by the presentation of previous topics. We elaborate on this shortly. You might think that all books would subscribe to such a presentation sequence. But MFC is such a big subject, deciding where to start and what to cover next is not evident. Notable Features of this Book What are the distinctive features of this book? How does it differ from other MFC books? Preparation for New Topics Before you see the first MFC windows program in Chapter 4, you will learn about various MFC classes in the familiar "console application" setting. This way, when you get to Chapter 4, much of the code in the first program there will be familiar to you. Now all you will be expected to do is focus on the one new concept--message maps. In Chapter 1, you study the MFC utility objects in console applications before they are used in the first windows program in Chapter 4. MFC utility objects are used everywhere in windows programs. Virtual functions are very common in MFC windows programs. In Chapter 2 we study a console program that uses a virtual function -- BurnFuel() -- in precisely the same way MFC uses them. Now, when you see your first MFC virtual function in Chapter 4 -- InitInstance() -- you will not be mystified. In Chapter 3, we illustrate the use of MFC collection class objects in console applications. Again, when you next see these objects in windows applications, you will feel more comfortable with them, because of your previous experience. In Chapter 8, we first introduce the AppWizard and ClassWizard. At that point, you have a good number of MFC concepts "under your belt" and are ready to focus on seeing how these Wizards can help you. Chapter 14 pulls "all the parts" together into programs with both the "document" and "view" architecture. At this point, you are ready to embrace the "document" concept because since Chapter 6 we have been encouraging you to write object-oriented programs--where your entire application is a class object. For example, see program Ex06i. Here the application object is the CTextLines object, Text. More than 90 Program Examples By doing you will learn. For that reason, there are more than 90 short, easy-to-understand programs on the accompanying CD. Most of these are described in the text, and were created specifically so you could practice modifying them. Diagrams There are many relationships involved in windows programs. This book has many diagrams that will help you picture various relationships and activity. How to Use This Book in a C++ Course Sequence Before this past year, I had felt that presenting "MFC programming"--in say, a software engineering course--constituted an interruption to the main flow of the course. In effect, "Let''s put a hold on the important stuff we are doing now, because I now want to show you a few things that will make your programs look better." But I finally realized that MFC--as an object-oriented system--could be incorporated into the course and be used as a tool for teaching object-oriented programming concepts. So here are my suggestions where this book might be used as an important supplement in the common, introductory, two-semester course sequence. The First C++ Programming Course--All Programs Are Console Applications The utility classes in Chapter 1 make great examples of classes that students can use before they write their own. Problems abound: Given 100 randomly generated CPoint objects, find the two points that are closest together. Parts of Chapter 2 can be covered when classes are introduced. Parts of Chapter 3 can be used after arrays have been discussed. Other parts of Chapter 3 can be used if pointers are covered in the first course. The Second Course--Where Data Structures Is Commonly The Primary Topic Suppose parts of Chapters 1, 2, and 3 are covered in the first course. Then, if only Chapters 4, 5, and 6 are covered in this second course, students will be prepared to write a wide range of challenging window applications. The remaining chapters of the book might be left for students to read on their own. Richard M. Jones JonesR@WCSUB.CtStateU.edu JonesJ@csu.cted.net

An electronic version of this book is available through VitalSource.

This book is viewable on PC, Mac, iPhone, iPad, iPod Touch, and most smartphones.

By purchasing, you will be able to view this book online, as well as download it, for the chosen number of days.

Digital License

You are licensing a digital product for a set duration. Durations are set forth in the product description, with "Lifetime" typically meaning five (5) years of online access and permanent download to a supported device. All licenses are non-transferable.

More details can be found here.

A downloadable version of this book is available through the eCampus Reader or compatible Adobe readers.

Applications are available on iOS, Android, PC, Mac, and Windows Mobile platforms.

Please view the compatibility matrix prior to purchase.