|
|
|||||||||||||||||||||||||||||
|
Подключаем к приложению справку в формате .CHMИсточник: accessboom
Я думаю не надо доказывать, что значит для серьезного приложения справочная система ? Без нее продукт вообще нельзя позиционировать продукт как коммерческий... Хорошая интерактивная дружелюбная справка имеет для пользователя решающее значение при выборе продукта! Также в справке можно подробно расписать множество нюансов и подсказок по определенному действию в программе, что опять же позволит пользователям в полной мере использовать все возможности Вашего приложения, т.е. Ваше приложение становится более эффективным в руках просветленных юзеров и легко выигрывает тендер в честной конкурентной борьбе ;). Сначала надо создать справочную систему ;) Лично я использую для подготовки Help & Manual 3 версии (не бесплатный!). в принципе, технически ничего сложного в подготовке справочной системы нет. Пишешь как в Word'e новые страницы, объединяешь их в папки, подпапки. Гораздо сложнее наполнить справку интеллектуальной составляющей ;) Да, еще аккуратно нумеровать Help Contex Numbers, по которым можно будет впоследствии вызывать нужную страницу (мы же хотим не просто открывать файл справки, а сразу выбирать нужное место в справке, соответственно выполняемому действию или открытой форме, что вполне логично). В Help & Manual имеются различные заготовки, которые нужно только заполнить своим содержанием и, считайте, справка к программе готова! Маленький секрет - зайдите в свойства проекта и выставьте русские настройки, иначе после компиляции получите кракозябры ;) В Интернете имеется русификация с лекарством для этого пакета, хорошая русская справка о программе, так, что думаю никаких проблем при подготовке стандартной справочной системы возникнуть не должно. С другой стороны, справку можно готовить в любом текстовом редакторе, а потом скомпилировать бесплатным компилятором от Microsoft (htmlhelp.exe). Но этот путь весьма трудоемок - гораздо легче использовать специализированные пакеты. Ну все, будем считать, что справка у нас написана, Help Contex Numbers расставлены, и файл .CHM успешно скомпилирован. создадим в программе модуль mdlHelp и вставим в него этот код: Option Compare Database Private Const HH_DISPLAY_TOPIC = &H0 Private Declare Function HtmlHelp Lib "Hhctrl.ocx" Alias "HtmlHelpA" _ Private Function LaunchHTMLHelp(HelpFile As String, Optional WindowHandle As Long, _ Dim lngReturn As Long On Error Resume Next If VBA.Len(VBA.Dir$(HelpFile)) > 0 Then End Function Public Function getHelp(intTopic As Long) As Boolean On Error Resume Next strAppPath = Application.CurrentProject.Path & "\" End Function в принципе это все, что нужно для нормальной работы со справкой в формате .CHM ;) вызываем из любого места программы так: getHelp (100) ' где 100 и есть то самый Help Contex Numbers, указанный при подготовке нужной страницы ' справка откроется и автоматически выберется страница с Help Contex Numbers равным 100 если хотим просто показать файл справки с начальной страницы: getHelp (0) Так как это функция, то вызывать ее необязательно из программного кода модуля формы - достаточно просто написать в событии подходящего контрола "Нажатие кнопки" =getHelp(100) Автор кода Jamie Czernik. Я взял на себя смелость упростить код без видимой потери функциональности. Лично мое мнение после практической работы по созданию справочной системы - для Access оправдано применение справки в формате WinHelp. Это позволяет обойтись вообще без какого-либо кодирования (используем клавишу F1 и кнопку контекстной справки - знак вопроса на панели заголовка формы). Точно также при создании справки аккуратно расставляем Help Contex Numbers, а затем в свойствах форм и контролов указываем их в качестве идентификаторов справки для вызова конкретной страницы. Help&Manual3 прекрасно компилирует справку и в .HLP формате, который все еще является "родным" для Access. Ссылки по теме
|
|