Microsoft Visual C++ и MFC. Программирование для Windows 95 и Windows NT | страница 60



Листинг 2.8. Файл MFMenuRes.h

>//{{NO_DEPENDENCIES}}

>// Включаемый файл, созданный Microsoft Developer Studio

>// Используется в файле ресурсов MFMenu.rc

>//

>#define IDR_MENU 101

>#define ID_TEST_BEEP 40001

>#define ID_TEST_EXIT 40002


>// Следующие значения идентификаторов используются по

>// умолчанию для новых объектов

>#ifdef APSTUDIO_INVOKED

> #ifndef APSTUDIO_READONLY_SYMBOLS

>  #define _APS_NEXT_RESOURCE_VALUE 102

>  #define _APS_NEXT_COMMAND_VALUE  40003

>  #define _APS_NEXT_CONTROL_VALUE  1000

>  #define _APS_NEXT_SYMED_VALUE    101

> #endif

>#endif

В листинге 2.9 мы привели файл ресурсов MFMenuRes.rc приложения. Этот файл был подготовлен редактором ресурсов Visual C++. Одна из первых строк файла содержит директиву #include которой подключается файл MFMenuRes.h, содержащий описание идентификаторов ресурсов (листинг 2.8).

Среди прочих служебных строк, необходимых редактору ресурсов и компилятору Visual C++, вы можете обнаружить описание меню приложения IDR_MENU. Для первого приложения, использующего ресурсы мы привели файл ресурсов полностью. Впоследствии мы ограничимся словесным описанием ресурсов и будем приводить только выдержки из файла ресурсов.

Листинг 2.9. Файл MFMenuRes.rc

>// Файл описания ресурсов приложения, созданный

>// Microsoft Developer Studio

>#include "MFMenuRes.h"


>#define APSTUDIO_READONLY_SYMBOLS

>//////////////////////////////////////////////////////////////

>// Включаем файл afxres.h, содержащий определения стандартных

>// идентификаторов

>#include "afxres.h"


>//////////////////////////////////////////////////////////////

>#undef APSTUDIO_READONLY_SYMBOLS


>//////////////////////////////////////////////////////////////

>// Руссификацированные ресурсы

>#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_RUS)

> #ifdef _WIN32

>  LANGUAGE LANG_RUSSIAN, SUBLANG_DEFAULT

> #pragma code_page(1251)

> #endif //_WIN32


> ////////////////////////////////////////////////////////////

> // Меню

> //

> IDR_MENU MENU DISCARDABLE

> BEGIN

>  POPUP "Test"

>  BEGIN

>   MENUITEM "Beep", ID_TEST_BEEP

>   MENUITEM SEPARATOR

>   MENUITEM "Exit", ID_TEST_EXIT

>  END

> END


> #ifdef APSTUDIO_INVOKED


>  ////////////////////////////////////////////////////////

>  // Ресурсы TEXTINCLUDE

>  //

>  1 TEXTINCLUDE DISCARDABLE

>  BEGIN

>   "MFMenuRes.h\0"

>  END


>  2 TEXTINCLUDE DISCARDABLE

>  BEGIN

>   "#include ""afxres.h""\r\n"

>   "\0"

>  END


>  3 TEXTINCLUDE DISCARDABLE

>  BEGIN

>   "\r\n"

>   "\0"

>  END


> #endif // APSTUDIO_INVOKED


>#endif // Руссификацированные ресурсы


>//////////////////////////////////////////////////////////////