FIX: Toolbars Broken in ENROLL Tutorial Samples (154648)



The information in this article applies to:

  • The Microsoft Foundation Classes (MFC), when used with:
    • Microsoft Visual C++, 32-bit Learning Edition 4.0
    • Microsoft Visual C++, 32-bit Learning Edition 4.2
    • Microsoft Visual C++, 32-bit Enterprise Edition 4.2
    • Microsoft Visual C++, 32-bit Professional Edition 4.0
    • Microsoft Visual C++, 32-bit Professional Edition 4.1
    • Microsoft Visual C++, 32-bit Professional Edition 4.2

This article was previously published under Q154648

SYMPTOMS

If you build the ENROLL tutorial, you will see that there is a "+" Toolbar button that brings up the About dialog box instead of adding new records. The additional buttons, "\", "-" and "?" are not present.

CAUSE

The Enroll.rc file is missing for the Toolbar buttons even though the bitmap for the Toolbar has images for all the buttons in it.

RESOLUTION

The Toolbar section has the following IDs listed in Enroll.rc:
   // Toolbar
   // 

   IDR_MAINFRAME TOOLBAR DISCARDABLE  16, 15
   BEGIN
       BUTTON      ID_EDIT_CUT
       BUTTON      ID_EDIT_COPY
       BUTTON      ID_EDIT_PASTE
       SEPARATOR
       BUTTON      ID_FILE_PRINT
       SEPARATOR
       BUTTON      ID_RECORD_FIRST
       BUTTON      ID_RECORD_PREV
       BUTTON      ID_RECORD_NEXT
       BUTTON      ID_RECORD_LAST
       SEPARATOR
       BUTTON      ID_APP_ABOUT
   END
				
The IDs should be the following:
   // Toolbar
   // 

   IDR_MAINFRAME TOOLBAR DISCARDABLE  16, 15
   BEGIN
       BUTTON      ID_EDIT_CUT
       BUTTON      ID_EDIT_COPY
       BUTTON      ID_EDIT_PASTE
       SEPARATOR
       BUTTON      ID_FILE_PRINT
       SEPARATOR
       BUTTON      ID_RECORD_FIRST
       BUTTON      ID_RECORD_PREV
       BUTTON      ID_RECORD_NEXT
       BUTTON      ID_RECORD_LAST
       SEPARATOR

       BUTTON      ID_RECORD_ADD
       BUTTON      ID_RECORD_REFRESH
       BUTTON      ID_RECORD_DELETE
       SEPARATOR
       BUTTON      ID_APP_ABOUT
   END
				
Open Enroll.rc as a text file in MSDEV. Go to the Toolbar section, and add the following four lines after "BUTTON ID_RECORD_LAST":
   SEPARATOR
   BUTTON      ID_RECORD_ADD
   BUTTON      ID_RECORD_REFRESH
   BUTTON      ID_RECORD_DELETE
				
Rebuilding the application should fix the problem.

STATUS

Microsoft has confirmed this to be a bug in the Microsoft products listed at the beginning of this article. This bug was fixed in Visual C++ version 5.0.

Modification Type:MajorLast Reviewed:12/1/2003
Keywords:kbbug kbDatabase kbfix KbUIDesign kbVC500fix KB154648