VISUAL C++ PROGRAMMING WORKSHOP
Binghamton University
February/March, 2000
Dr. Richard R. Eckert
Associate Professor
Computer Science Department
Watson School of Engineering and Applied Science
SUNY Binghamton
Binghamton, NY 13902
607-777-4365 (W)
607-722-1972 (H)
reckert@binghamton.edu
http://www.cs.binghamton.edu/~reckert/

WORKSHOP SYLLABUS and TENTATIVE SCHEDULE

Introduction to GUIs and Windows Programming: Concepts, Rationale, History, Elements, Device Independence, Object Orientation, Multitasking, Message-Driven Paradigm, Relationship to non-GUI Systems.

Use of Microsoft’s Developer Studio—Workspaces, Projects, Text Editors, Resource Editors, Compilers, Linker, Other Tools.

Microsoft Windows Win32 API Programming—An Example of Event-Driven, Graphics-Oriented Programming: Windows classes, resources, message processing, text and graphics output, the device context, simple mouse and keyboard input, simple menus. Example Programs.

Animated graphics, bitmaps, Raster Ops, BitBlt, Timers. Example Programs.

Child Window Controls: Static Text, Button, Edit Control, List Box, Combo Box, ScrollBar. Example Programs.

Child and Popup Windows. Examples.

Dialog Boxes. Examples.

The Clipboard.  Examples.

Introduction to the Windows Microsoft Foundation Class (MFC) Library. The MFC App/Window Approach. Message Maps. Menus, Controls, and Dialog Boxes with the App/Window approach.  Examples.

The MFC  Document/View Approach. Use of AppWizard and ClassWizard. Menus, Controls, and Dialog Boxes with the Document/View Approach. Examples.

Dialog-Based Applications; Common Dialog Boxes and other Common Controls, Fonts, Color, Files, and Printing with MFC. Examples.

Windows Multimedia. Examples.

Network Programming (TCP/IP) with MFC. Examples.

Web Programming (HTML) with MFC. Examples.

CLASS NOTES AND SAMPLE PROGRAMS:

Most workshop notes and sample program source code will be available on my home page (http://www.cs. binghamton.edu/~reckert/index.html, under the "Visual C++ Programming Workshop" link).

REFERENCES:

Petzold, "Programming Windows," Fifth Edition, Microsoft Press, 1999, ISBN 1-57231-995-X (This is the "Bible" of Win32 API Progrmming)

Horton, "Beginning Visual C++ 6," Wrox Press, 1998, ISBN 1-861000-88-X

Young, "Mastering Visual C++ 6," Sybex, 1998, ISBN 0-7821-2273-6

Kruglinski, Shepherd, Wingo, "Programming Microsoft Visual C++," Fifth Edition, Microsoft Press, 1998, ISBN 1-57231-857-0

Gregory, "Special Edition Using Visual C++ 6," Que, 1998, ISBN 0-7897-1539-2

Chapman, "Teach Yourself Visual C++ 6 in 21 Days," Sams, 1998, ISBN 0-672-31240-9

Williams, "Teach Yourself Visual C++ 6 in 24 Hours," Sams, 1998, ISBN 0-672-31303-0

Blaszcak, "Revolutionary MFC 4 Programming with Visual C++," Wrox, 1996, ISBN 1-874416-92-3

Young, "Windows Animation Programming with C++," AP Professional, 1994, ISBN 0-12-773750-2

Lyons, "Black Art of Windows Game Programming," Waite Group Press, 1995, ISBN 1-878739-95-6

Simon, "Windows 95 Win32 Programming API Bible," Waite Group Press, 1996, ISBN 1-57169-009-3

Belew, et.al., "Programming Windows 95 Unleashed," SAMS, 1995, ISBN 0-672-30602-6

Shaw & Osier, "Teach Yourself MFC in 21 Days," SAMS, 1995, ISBN 0-672-30462-7

Andrews, "Learn Visual C++ Now," Microsoft Press, 1996, ISBN 1-55615-845-9.

Schildt, "MFC Programming from the Ground Up," McGraw Hill, 1996, ISBN 0-07-882222-X.

Kruglinski, "Inside Visual C++," Microsoft Press, 1997, ISBN 1-57231-565-2. .

Broquard, "Programming with MFC for Windows 95," Prentice Hall PTR, 1996, ISBN 0-13-459546-7.

Feuer, "MFC Programming," Addison Wesley Developers Press, 1997, ISBN 0-201-63358-2.

Kolb, "Win32 Game Developer's Guide with DirectX 3," Waite Group, 1997, ISBN 1-57169-030-1.
 

The workshop laboratories will have Microsoft Windows NT and Microsoft Visual C++5.0 or VC++6.0 installed. The online help will be available.