(495) 925-0049, ITShop интернет-магазин 229-0436, Учебный Центр 925-0049
  Главная страница Карта сайта Контакты
Поиск
Вход
Регистрация
Рассылки сайта
 
 
 
 
 

Подключаем к приложению справку в формате .CHM

 

Я думаю не надо доказывать, что значит для серьезного приложения справочная система ? Без нее продукт вообще нельзя позиционировать продукт как коммерческий...

Хорошая интерактивная дружелюбная справка имеет для пользователя решающее значение при выборе продукта! Также в справке можно подробно расписать множество нюансов и подсказок по определенному действию в программе, что опять же позволит пользователям в полной мере использовать все возможности Вашего приложения, т.е. Ваше приложение становится более эффективным в руках просветленных юзеров и легко выигрывает тендер в честной конкурентной борьбе ;).

Сначала надо создать справочную систему ;) Лично я использую для подготовки Help & Manual 3 версии (не бесплатный!). в принципе, технически ничего сложного в подготовке справочной системы нет. Пишешь как в Word'e новые страницы, объединяешь их в папки, подпапки. Гораздо сложнее наполнить справку интеллектуальной составляющей ;)

Да, еще аккуратно нумеровать Help Contex Numbers, по которым можно будет впоследствии вызывать нужную страницу (мы же хотим не просто открывать файл справки, а сразу выбирать нужное место в справке, соответственно выполняемому действию или открытой форме, что вполне логично).

В Help & Manual имеются различные заготовки, которые нужно только заполнить своим содержанием и, считайте, справка к программе готова! Маленький секрет - зайдите в свойства проекта и выставьте русские настройки, иначе после компиляции получите кракозябры ;) В Интернете имеется русификация с лекарством для этого пакета, хорошая русская справка о программе, так, что думаю никаких проблем при подготовке стандартной справочной системы возникнуть не должно.

С другой стороны, справку можно готовить в любом текстовом редакторе, а потом скомпилировать бесплатным компилятором от Microsoft (htmlhelp.exe). Но этот путь весьма трудоемок - гораздо легче использовать специализированные пакеты.

Ну все, будем считать, что справка у нас написана, Help Contex Numbers расставлены, и файл .CHM успешно скомпилирован.

создадим в программе модуль mdlHelp и вставим в него этот код:

Option Compare Database
Option Explicit

Private Const HH_DISPLAY_TOPIC = &H0
Private Const HH_HELP_CONTEXT = &HF

Private Declare Function HtmlHelp Lib "Hhctrl.ocx" Alias "HtmlHelpA" _
(ByVal hWndCaller As Long, ByVal pszFile As String, ByVal uCommand As Long, _
ByVal dwData As Long) As Long

Private Function LaunchHTMLHelp(HelpFile As String, Optional WindowHandle As Long, _
Optional Topic As Long) As Boolean

Dim lngReturn As Long

On Error Resume Next

If VBA.Len(VBA.Dir$(HelpFile)) > 0 Then
    If Topic = 0 Then
        lngReturn = HtmlHelp(WindowHandle, HelpFile, HH_DISPLAY_TOPIC, 0)
    Else
        lngReturn = HtmlHelp(WindowHandle, HelpFile, HH_HELP_CONTEXT, Topic)
    End If
    LaunchHTMLHelp = VBA.CBool(lngReturn)
End If

End Function

Public Function getHelp(intTopic As Long) As Boolean
Dim strAppPath As String

On Error Resume Next

strAppPath = Application.CurrentProject.Path & "\"
getHelp = LaunchHTMLHelp(strAppPath & "AddOns\Справка_УНПДД.chm", 0, intTopic)

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.

Ссылки по теме


 Распечатать »
 Правила публикации »
  Обсудить материал в конференции Microsoft »
Обсудить материал в конференции Дизайн, графика, обработка изображений »
Написать редактору 
 Рекомендовать » Дата публикации: 18.10.2007 
 

Магазин программного обеспечения   WWW.ITSHOP.RU
Microsoft Visual Studio Professional 2017 Russian Academic OLP 1License NoLevel
Microsoft SQL CAL 2017 Sngl OLP 1License NoLevel UsrCAL
Microsoft Windows Professional 10, Электронный ключ
Microsoft SQL CAL 2017 Sngl OLP 1License NoLevel DvcCAL
Microsoft SQL Server Standard Core 2017 Sngl OLP 2Licenses NoLevel CoreLic Qualified
 
Другие предложения...
 
Курсы обучения   WWW.ITSHOP.RU
 
Другие предложения...
 
Магазин сертификационных экзаменов   WWW.ITSHOP.RU
 
Другие предложения...
 
3D Принтеры | 3D Печать   WWW.ITSHOP.RU
 
Другие предложения...
 
Новости по теме
 
Рассылки Subscribe.ru
Информационные технологии: CASE, RAD, ERP, OLAP
Безопасность компьютерных сетей и защита информации
Новости ITShop.ru - ПО, книги, документация, курсы обучения
CASE-технологии
Программирование на Microsoft Access
Мир OLAP и Business Intelligence: новости, статьи, обзоры
Новости мира 3D-ускорителей
 
Статьи по теме
 
Новинки каталога Download
 
Исходники
 
Документация
 
Обсуждения в форумах
3D редакторы, плюсы и минусы (2)
Одно из многих сотен бестолковых обобщений. Прости их господи, Васей Пупкиных
 
Где можно найти «Пакет анализа» для Excel ? (57)
Коллеги, подскажите, где можно скачать надстройку к Excel под названием «Пакет анализа», после...
 
Как изменить шрифт Wordpad? (3)
Как изменить шрифт Wordpad по умолчанию? Там Таймс, а мне, допустим, Ариал нужен. Можно ли...
 
Corel. Сохранение файла в старом формате. (25)
у меня есть горящий вопрос по Корелу и никто мне не может дать на него ответ. Я работаю в...
 
Надстройка "Поиск решения" MS Excel (4)
Помогите решить задачу с помощью " поиск решения" мука яйца ...
 
 
 



    
rambler's top100 Rambler's Top100