Как да използвам помощта в програми Delphi - Софтуерни продукти

Как да използвам помощта в програмите Delphi

    1. Как работят програмите Delphi с помощни файлове.
    2. Практика: посочете помощния файл.
    3. Помощ за поддръжка в програми Delphi.
    4. Практика: просто извикване на статична помощ.
    5. Практика: динамично извикване на контекстно-зависима помощ.
    6. Преглед на често срещаните формати на помощни файлове.
    7. Поддръжка за формати за помощ в Delphi.
    8 Заключение

Как работят програмите Delphi с помощни файлове

Всяко приложение VCL Delphi има глобален обект на приложение от тип TApplication. Този обект има свойства и методи, които засягат цялото приложение. И за активиране на помощта има свойството Application.HelpFile .

Когато на това свойство е присвоена стойност, можете да използвате методите и свойствата на обекта на приложението и вашите формуляри (прозорци), за да работите с ваша помощ. Стойността на свойството е името на помощния файл на вашата програма. Форматът за помощ може да бъде всеки от поддържаните от вашето приложение (повече за това по-късно). Засега само да отбележим, че различните формати на помощните файлове имат различни възможности (и външен вид!). Поддръжката на тези формати в самия Delphi също е различна. Следователно дали дадена функция, обсъдена по-долу, ще работи, ще зависи от избрания от вас формат на помощния файл. Но, отново, повече за това по-късно.

И така, освен обекта Application, обектите от класа TForm имат и свойството HelpFile. Когато приложението получи команда за работа със системата за помощ (например потребителят е натиснал F1), тогава приложението Delphi ще използва помощния файл, посочен в Application.HelpFile, за да изпълни тази команда. Но ако едновременно с това формулярът е активен, който има зададено свойство HelpFile, тогава за изпълнение на командата той ще използва свойството на формуляра, а не приложението.

С други думи, Form.HelpFile просто модифицира Application.HelpFile в контекста на една конкретна форма. Ако вашата програма има само един помощен файл, тогава не трябва да задавате свойствата на HelpFile на формулярите, а да задавате свойството HelpFile на обекта Application .

Практика: посочване на помощния файл

Програмно: Проект/Изглед на източник

Чрез GUI: Проект/Опции/Приложение:

  1. Кликването върху бутона "Преглед" ще ви покаже само * .hlp файлове. За да изберете файл с различен формат, трябва да изберете опцията "Всички файлове (*. *)" В отворения диалогов филтър.
  2. Избирането на помощния файл с помощта на бутона "Преглед" ще въведе пълния път до файла с изглед в полето "C: \ Потребители \ Александър \ Документи \ RADStudio \ Projects \ DemoProject \ Help \ HelpFile.hlp" - това не е много добра идея, защото на машината, където програмата ви ще бъде инсталирана по-късно, този файл ще бъде на съвсем друго място. По-добра идея е да отрежете пътя към относителния: ". \ Помощ \ HelpFile.hlp".
  3. Проблемът с предишната точка е, че относителният път е спрямо текущата директория. Което обикновено е равно на папката на вашата програма, но не винаги. Най-доброто решение би било да се поправи тази точка по следния начин:

Което ви дава 100% гаранция за работа, но. не е ли по-лесно просто да използвате програмната настройка на пътя първоначално, без да докосвате GUI?

Помощ за поддръжка в програми Delphi

Натискане на F1
Тази функция изпълнява контекстна помощ. Когато потребителят натисне F1, приложението търси помощния файл за тема с контекстен номер или ключова дума, посочени в свойствата на компонента с фокус. Ако бъде намерена една или няколко теми, се отваря помощният файл, който показва тези теми в отделен прозорец.

Бутон с въпрос в заглавието на прозореца

Този бутон активира контекстно-зависимия режим на помощ във формуляра - така наречения "Какво е това?" ("Какво е?"). Когато потребителят щракне върху този бутон, формулярът временно се деактивира и курсорът променя формата си на стрелка с въпрос:

Щракването върху която и да е контрола в този режим ще накара приложението да търси темата в помощния файл, свързан с този компонент. Ако дадена тема бъде намерена, тя ще се покаже в изскачащ прозорец.

Обикновено този метод не се използва в съвременните програми. Исторически се появява в 16-битов Windows, преди да има подсказки. Днес вместо тази функционалност е много по-лесно да използвате обичайното свойство Hint .

Бутон за помощ с Kind = bkHelp

Това е лесен начин да получите помощ, без да пишете нито един ред код. Кликването върху бутон ще отвори тема с контекстен номер или ключова дума, посочени в свойствата на самия бутон или (обикновено) на формуляра.

Application.HelpCommand
Това е гъвкав метод, който ви позволява да изпълнявате всяка команда с вашия файл за помощ. Тази команда е обсъдена по-подробно по-долу.

Application.HelpJump
Това е помощна функция, която обгръща Application.HelpCommand с команда "jump". Тя ви позволява да покажете темата за помощ с нейния идентификатор (име).

Application.HelpContext
Това е помощна функция, която обгръща Application.HelpCommand. Позволява ви да покажете темата с така наречения контекстен номер.

Application.HelpKeyword
Това е помощна функция, която обгръща Application.HelpCommand. Позволява ви да покажете темата по ключова дума.

Практика: Лесно се обадете на помощ

Всяко сериозно приложение за Windows има елемент от менюто за помощ като този:

Как да отворите помощ

И така, как да отворите прозорец на Finder? Всъщност е много просто: поставете този код в манипулатора на щракване върху елемента от менюто: