Компоненты исходного кода

   
На этом шаге мы проанализируем созданный код.

   
AppWizard не только создает файлы, необходимые для построения справочной системы приложения, но и
дополняет исходный код средствами поддержки контекстно-зависимой справки. В меню Help добавляется
пункт Help Topics (ресурс ID_HELP_FINDER), на панель инструментов - кнопка Context Help
(режим интерактивной справки, ресурс ID_CONTEXT_HELP), а в таблицу "быстрых" клавиш - записи,
определяющие F1 в качестве клавиши контекстно-зависимой справки (ресурс ID_HELP) и
SH1FT+F1 в качестве клавиш интерактивной справки.

   
Приведенный ниже код карты сообщений главного окна приложения связывает вышеперечисленные ресурсы с
функциями-обработчиками базового класса.

BEGIN_MESSAGE_MAP(CMainFrame, CFrameWnd)
	//{{AFX_MSG_MAP(CMainFrame)
		// NOTE - the ClassWizard will add and remove mapping macros here.
		//    DO NOT EDIT what you see in these blocks of generated code !
	ON_WM_CREATE()
	//}}AFX_MSG_MAP
	// Global help commands
	ON_COMMAND(ID_HELP_FINDER, CFrameWnd::OnHelpFinder)
	ON_COMMAND(ID_HELP, CFrameWnd::OnHelp)
	ON_COMMAND(ID_CONTEXT_HELP, CFrameWnd::OnContextHelp)
	ON_COMMAND(ID_DEFAULT_HELP, CFrameWnd::OnHelpFinder)
END_MESSAGE_MAP()


Рис.1. Карта сообщений

   
Так или иначе все функции-обработчики вызывают функцию CWnd::WinHelp(), которая запускает приложение WinHelp.
OnContextHelp() формирует из идентификатора ресурса идентификатор контекста справки, который передается
в качестве параметра функции WinHelp(). Если создать корректный идентификатор контекста справа не удается,
генерируется командное сообщение ID_DEFAULT_HELP.

   
На следующем шаге мы рассмотрим создание разделов справки.



Вы можете оставить комментарий, или Трекбэк с вашего сайта.

Оставить комментарий