Читать «Microsoft Visual C++ и MFC. Программирование для Windows 95 и Windows NT. Часть 2» онлайн - страница 148

Александр Вячеславович Фролов

//

// Generated from the TEXTINCLUDE 3 resource.

//

#define _AFX_NO_SPLITTER_RESOURCES

#define _AFX_NO_OLE_RESOURCES

#define _AFX_NO_TRACKER_RESOURCES

#define _AFX_NO_PROPERTY_RESOURCES

#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU)

#ifdef _WIN32

LANGUAGE 9, 1

#pragma code_page(1252)

#endif

#include "res\Dater.rc2" // non-Microsoft Visual C++ edited resources

#include "afxres.rc"     // Standard components

#include "afxdb.rc"      // Database resources

#endif

//////////////////////////////////////////////////////////////

#endif // not APSTUDIO_INVOKED

Идентификаторы ресурсов приложения Dater определены в файле resource.h. Этот файл создается автоматически редактором ресурсов Microsoft Visual C++. Исходный текст файла resource.h представлен в листинге 3.15.

Листинг 5.4. Файл resource.h

//{{NO_DEPENDENCIES}}

// Microsoft Developer Studio generated include file.

// Used by Dater.rc

//

#define IDD_ABOUTBOX             100

#define IDD_DATER_FORM           101

#define IDP_FAILED_OPEN_DATABASE 103

#define IDR_MAINFRAME            128

#define IDR_DATERTYPE            129

#define IDC_NAME                 1000

#define IDC_ADDRESS              1001

#define IDC_PRIORITY             1002

#define IDC_PHONE                1003

// Next default values for new objects

//

#ifdef APSTUDIO_INVOKED

#ifndef APSTUDIO_READONLY_SYMBOLS

#define _APS_3D_CONTROLS         1

#define _APS_NEXT_RESOURCE_VALUE 130

#define _APS_NEXT_COMMAND_VALUE  32771

#define _APS_NEXT_CONTROL_VALUE  1004

#define _APS_NEXT_SYMED_VALUE    101

#endif

#endif

Наибольший интерес в файле ресурсов приложения Dater представляют строки меню Record и соответствующие им кнопки панели управления. Эти строки и кнопки позволяют просматривать в окне приложения все записи базы данных.

Строка меню Record Идентификатор Описание
First Record ID_RECORD_FIRST Перейти к первой записи
Previous Record ID_RECORD_PREV Перейти к предыдущей записи
Next Record ID_RECORD_NEXT Перейти к следующей записи
Last Record ID_RECORD_LAST Перейти к последней записи 

Командные сообщения с идентификаторами ID_RECORD_FIRST, ID_RECORD_PREV, ID_RECORD_NEXT и ID_RECORD_LAST обрабатываются виртуальным методом OnMove класса окна просмотра CRecordView.

По умолчанию, метод OnMove считывает соответствующую запись из базы данных и отображает значения полей этой записи в окне просмотра.

Обнаруженные опечатки

Во время подготовки этой книги мы обнаружили несколько опечаток в томе 24 из серии “Библиотека системного программиста”, посвященном библиотеке MFC. Мы приносим вам свои извенения и недеемся, что они не ввели вас в заблуждение. На дискетах, которые вы можете приобрести вместе с книгой, все перечисленные ошибки исправлены.

На странице 17 метод ConvertString, объявленный как int, неверно определен как void. Этот метод должен возвращать значение типа int.