Диалоговое окно с сообщением об ошибке
Диалоговое окно с сообщением об ошибке
Формирование файла проекта справочной системы
Формирование файла проекта справочной системы
Файл проекта справочной системы содержит параметры ее компиляции и может включать до шести разделов, выполняющих функции, описанные в табл. 12.5.
Создание справочной системы приложения
Разработанное вами приложение должно быть интуитивно понятным и дружественным к пользователю. Если у пользователя возникнут затруднения, он должен быстро получить справку о возможных действиях. Требуемую информацию пользователь может найти в руководстве пользователя или обратиться за консультацией к разработчику. Но проще всего воспользоваться справочной системой, содержащей информацию о приложении, описание его основных функций и инструкцию по работе.
Для отображения справочной информации в Visual FoxPro вы можете использовать строку состояния, диалоговое окно и справочную систему в формате WinHelp или HTML.
Строка состояния
В Visual FoxPro строка состояния используется для пояснения назначения элементов управления формы и пунктов меню. Пояснения к элементам управления, отображаемые в строке состояния, задаются в свойстве statusBarText (Текст строки состояния). Кроме текста строки состояния вы можете задать текст подсказки, который будет отображаться под курсором мыши, если его установить на элемент управления и удерживать некоторое время. Текст подсказки задается в свойстве TooiTipText (Текст подсказки). На рис. 12.1 для поля редактирования, содержащего адрес клиента, в окне Properties (Свойства) установлены значения свойств statusBarText (Текст строки состояния) и TooiTipText (Текст подсказки).
HELP
HELP
Для вывода на экран содержания справочной системы или указанной темы в окне справочной системы предназначена команда HELP, имеющая следующий синтаксис:
HELP [идентификаторТемы | ID индексТемы]
[IN [WINDOW] имяОкна I IN [WINDOW] SCREEN] /" I IN [WINDOW] MACDESKTOP] [NOWAIT]
Для вывода содержания справочной системы необходимо использовать команду HELP без указания имени темы. Если вы хотите отобразить контекстную справку, необходимо указать идентификатор темы или ее индекс.
Опция IN [WINDOW] позволяет открыть окно справочной системы внутри окна, описанного с помощью команды DEFINE WINDOW.
По умолчанию при вызове справочной системы приостанавливается выполнение программы, позволяя пользователю найти требуемую информацию. При использовании опции NOWAIT после вывода справочной информации программа продолжает свое выполнение.
Использование диалоговых окон
Использование диалоговых окон
В процессе выполнения приложения осуществляются разнообразные проверки, например, проверка соответствия введенного в поле значения заданным условиям. Если в результате проверки окажется, что введенное значение не удовлетворяет требуемым условиям, необходимо об этом сообщить пользователю. Из текста сообщения должна быть ясна причина ошибки. Кроме того, текст должен содержать рекомендации по ее исправлению. Для вывода информационного сообщения вы можете воспользоваться функцией MESSAGEBOX или создать собственную функцию. Рассмотрим описание функции MESSAGEBOX и приведем пример ее использования.
Использование справочной системы в приложениях
Использование справочной системы в приложениях
Мы рассмотрели создание справочных систем двух типов. Однако обращение к ним из приложения, созданного в Visual FoxPro, осуществляется одинаково. Рассмотрим в данном разделе команды Visual FoxPro, управляющие выводом справочной информации, и свойства элементов управления, с помощью которых организуется связь с темами справочной системы.
Ключи для поиска тем
Ключи для поиска тем
При определении ключей необходимо иметь в виду следующее.
В качестве маркера сноски используется латинский символ К. В тексте сноски можно определить сразу несколько ключей поиска, разделив их знаком (;). Длина строки с ключами поиска должна быть не более 255 символов.Команды Visual FoxPro для управления справочной системой
Команды Visual FoxPro для управления справочной системой
Для определения файла, содержащего справочную систему, а также для вывода на экран содержания или указанной темы из справочной системы используются команды Visual FoxPro. Список этих команд и их назначение приведены в табл. 12.7.
Компиляция и тестирование справочной системы
Компиляция и тестирование справочной системы
После того как вы подготовили проект справочной системы, его необходимо сохранить и скомпилировать. Используя кнопку Save project, contents and index files (Сохранить проект, содержание и индексированные файлы) на панели инструментов вкладки Project (Проект), можно сохранять файлы проекта, содержания и указателя. Для компиляции созданного проекта нажмите кнопку Compile HTML file (Компилировать HTML файл) панели инструментов HTML Help Workshop.
Нажмите кнопку View compiled file (Просмотр скомпилированного файла), чтобы просмотреть созданный файл справочной системы. Откроется окно, представленное на рис. 12.18.
Компиляция справочной системы
Компиляция справочной системы
После того как описание тем справочной системы и файл проекта подготовлены, можно приступать к компиляции справочной системы. В результате будет создан файл справки, имеющий расширение HLP.
Для компиляции справочной системы в Visual FoxPro вы можете воспользоваться программой Help Workshop, выполнив следующие действия:
Запустите программу Help Workshop. Появляется пустое окно программы. Откройте в этом окне созданный вами файл справочной системы проекта sales командой Open (Открыть) из меню File (Файл). Окно проекта содержит область просмотра файла проекта и кнопки, предназначенные для редактирования его разделов. Например, для редактирования раздела [OPTIONS] нажмите кнопку Options (Параметры). В результате на экране откроется диалоговое окно Options (Параметры), содержащее несколько вкладок. Для того чтобы скорректировать текст файла проекта, вам необходимо установить на вкладках требуемые параметры. Открывая соответствующие диалоговые окна, скорректируйте текст файла проекта. Уточнив параметры файла проекта, запустите его на компиляцию, нажав кнопку Save and Compile (Сохранить и компилировать), расположенную в нижнем правом углу окна проекта. Результаты компиляции отображаются в диалоговом окне Compilation (Компиляция).Если не было ошибок компиляции, создается файл справки, вы можете запустить его для проверки непосредственно из программы Help Workshop. Для этого выполните следующие действия:
В меню File (Файл) выберите команду Run Winhelp (Запустить WinHelp). В поле File (Файл) открывшегося диалогового окна введите имя файла справки или выберите нужный файл из раскрывающегося списка ранее созданных файлов справок. Для поиска файла справки вы можете воспользоваться кнопкой Browse (Обзор), расположенной с правой стороны этого поля. Используя раскрывающийся список Mapped Topic IDs (Идентификаторы тем), выберите тему, которую хотите отобразить на экране.Окно HTML Help Workshop
Окно HTML Help Workshop
Окно программы HTML Help Workshop (рис. 12.9) состоит из двух частей. В левой части находятся вкладки Project (Проект), Contents (Содержание), Index (Указатель) и Help (Справка). Слева от каждой вкладки размешена соответствующая панель инструментов.
В правой части окна отображается содержимое выбранной темы справочной системы в виде файла HTML. Вы можете не только просмотреть этот файл, но и редактировать его с помощью команд из меню Tags (Теги) и кнопок панели инструментов.
Окно программы HTML Help Workshop
Окно программы HTML Help Workshop
HTML Help Workshop предоставляет возможность просмотра файлов с темами в Web-браузере (рис. 12.10). Для этого выберите имя требуемого файла в разделе [FILES] и нажмите кнопку Display in Browser (Отобразить в браузере).
Определение элемента содержания справочной системы
Определение элемента содержания справочной системы
Чтобы добавить заголовок или строку ссылки на тему справочной системы, нажмите соответственно на кнопки Insert a heading (Вставить заголовок) или Insert a page (Вставить страницу). Откроется диалоговое окно Table of Contents Entry (Ввод содержания) (рис. 12.15), в котором задайте наименование строки содержания и ссылку на тему справочной системы.
Вы можете создать многоуровневое содержание справочной системы. Для изменения уровня заголовка используйте кнопки Move selection right (Сдвинуть вправо) и Move selection left (Сдвинуть влево).
Определение ключей для поиска...
Определение ключей для поиска тем
Определение ключей для поиска тем
Для добавления нового ключа нажмите кнопку Insert a keyword (Вставить ключ). Откроется диалоговое окно Index Entry (Ввод указателя) (рис. 12.17), в котором в поле Keyword (Ключ) введите значение ключа, а затем в список Files/URLs and their information types (Файлы/Интернет ссылки и их типы) с помощью кнопки Add (Добавить) добавьте созданные ранее темы справочной системы. Для изменения тем используйте кнопку Edit (Редактировать), а для удаления — кнопку Remove (Удалить).
Определение ключей для поиска тем справочной системы
Определение параметров компиляции
Определение параметров компиляции
Раздел [Options] файла проекта справочной системы содержит описание параметров компиляции. Основные из них следующие:
TITLE — определяет заголовок окна справочной системы, который должен содержать не более 32 символов; COMPRESS — используется для сжатия справочного файла, создаваемого компилятором. Параметр может принимать значение True или False; WARNING — определяет количество сообщений об ошибках и предупреждениях, выводимых при компиляции; FORCEFONT — данный параметр используется в том случае, если в описании справочной системы использовались шрифты, отсутствующие на компьютере, где будет выполняться приложение. Параметр указывает компилятору на необходимость преобразования всех используемых в описании шрифтов к типу, введенному с параметром FORCEFONT.
Определение параметров проекта
Определение параметров проекта
Определение параметров проекта справочной системы
Определение параметров проекта справочной системы
Параметры проекта отображаются в разделе [options] вкладки Project (Проект). Для их редактирования нажмите кнопку Change Project Options (Изменить параметры проекта) на панели инструментов вкладки. Откроется диалоговое окно Options (Параметры) (рис. 12.11), которое содержит четыре вкладки: General (Общие), Files (Файлы), Compiler (Компилятор) и Merge Files (Объединяемые файлы).
На вкладке General (Общие) вы определяете:
заголовок окна справочной системы; файл темы и окно, которые выбираются при открытии справочной системы; язык справочной системы.Вкладка Files (Файлы) используется для указания расположения файлов справочной системы, файлов с указателями и содержанием. На вкладке Compiler (Компилятор) задаются параметры компиляции справочной системы.
Определение пояснений для элемента управления Функция имеет следующий синтаксис:
Определение пояснений для элемента управления Функция имеет следующий синтаксис:
MESSAGEBOX (текст-Сообщения [, типДиалоговогоОкна [, заголовок] ] }
Аргумент текстсообщения содержит текст выводимого сообщения. Длинное сообщение автоматически располагается на нескольких строках. Если сообщение состоит из нескольких предложений и вы хотите разбить его на абзацы, то используйте функцию снк(13) для формирования новой строки.
Аргумент типДиалоговогоОкна задает перечень кнопок и значков, которые будут отображаться в диалоговом окне. Данный аргумент является числовым и его значение определяется как сумма трех параметров: типа кнопок, типа значков и номера кнопки, выбранной по умолчанию. Возможные значения этих параметров приведены в табл. 12.1—12.3.
Определение процедуры для события Valid
Определение процедуры для события Valid
Запустите форму на выполнение, введите значение кредита более 5000, перейдите на следующее поле. Откроется диалоговое окно с сообщением об ошибке (рис. 12.3).
Определение псевдонимов тем
Определение псевдонимов тем
Чтобы в приложениях можно было использовать справочную систему, вы должны определить псевдоним каждой темы.
Определение псевдонимов тем
Определение псевдонимов тем
Определение свойства HELPContextiD
Определение свойства HELPContextiD
Определение связи между псевдонимами и индексами тем
Определение связи между псевдонимами и индексами тем
Для открытия определенной темы справочной системы используются индексы тем. Связь между псевдонимами тем и соответствующими им целочисленными значениями индекса тем задается в отдельном текстовом файле. В этом файле вы должны описать все идентификаторы, по которым будет осуществляться контекстный вызов. Данный файл состоит из строк, содержащих ключевое слово #Define, за которым следуют разделенные пробелом идентификатор и индекс темы. Пример текста приведен ниже:
#Define IDH_CUSTOMER 3
#Define IDH_GOODS 4
После создания файла связи вы должны связать его с файлом проекта. Для этого в диалоговом окне HtmlHelp API information перейдите на вкладку Map (Карта) и добавьте его в список подключаемых файлов.
Определение тем для ключа
Определение тем для ключа
Определение темы справочной системы для элементов управления
Определение темы справочной системы для элементов управления
При создании справочной системы для каждой формы приложения, а иногда и для отдельных объектов формы можно создать отдельную тему файла справки. Затем необходимо определить для формы файл справки и связанную с формой тему. Для этого используется команда SET HELP то имяфайла, которая должна выполняться при открытии формы или при запуске приложения, если справочная информация для всех форм находится в одном файле справки.
Затем необходимо задать для объектов формы или для самой формы свойство HELPContextiD (рис. 12.19), которое использует индекс темы, заданный в разделе [MAP] файла проекта справочной системы.
Если вы установили это свойство, то во время просмотра формы нажатие клавиши <F1> приведет к открытию указанной темы справочной системы. Вы видите использование справки в формате WinHelp, а на рис. 12.20 — в формате HTML.
Определение заголовка темы
Определение заголовка темы
Идентификатор темы определяется аналогично заголовку темы, только в качестве маркера сноски используется символ #. При создании идентификатора необходимо придерживаться следующих правил.
Идентификатор может содержать латинские буквы, цифры и символы: точка (.) и подчеркивание (_). Длина идентификатора не должна быть более 255 символов. Имя идентификатора должно быть уникальным, т. к. оно используется для организации перекрестных ссылок.Перекрестные ссылки
Перекрестные ссылки
Используя перекрестные ссылки справочной системы, вы можете из текущей темы перейти в связанные с ней или близкие ей темы.
В предыдущем разделе мы рассматривали создание тем, для которых были определены идентификаторы. Теперь создадим тему, в которой будет приведена ссылка на связанные с ней темы.
В теме создадим в качестве примера ссылку между фразой печать данных этой темы и темой с идентификатором Print__text. Для этого установите для фразы печать данных формат Двойное подчеркивание. Далее установите курсор на следующую позицию за выделенной фразой, определите формат Скрытый и введите идентификатор темы, с которой устанавливается связь (в данном случае: Print_text).
Поиск темы по ключам справочной системы
Поиск темы по ключам справочной системы
Пояснения к терминам
Пояснения к терминам
В справочной системе помимо перекрестных ссылок можно создать пояснения к отдельным терминам. Пояснение создается аналогично отдельной теме. Для него определяется идентификатор темы, после чего термин, требующий кратких пояснений, выделяется одинарным подчеркиванием. Затем за термином в скрытом формате вводится идентификатор поясняющей темы.
В справочной системе термины, для которых созданы пояснения, выделяются цветом и пунктирным подчеркиванием. При щелчке мыши на данном термине открывается окно с поясняющим текстом. Для закрытия окна с пояснениями необходимо щелкнуть мышью вне окна с текстом пояснения. После этого вы возвращаетесь в то же окно, откуда вызвали окно пояснения.
Будьте внимательны. Между маркером сноски
Предупреждение
Будьте внимательны. Между маркером сноски и текстом заголовка должен быть только один пробел. Заголовок должен содержать не более 128 символов. Кроме того, он не может быть форматированным.
Просмотр справочной системы
Просмотр справочной системы
Просмотр темы справочной системы в Web-браузере
Просмотр темы справочной системы в Web-браузере
Раздел [Files]
Раздел [Files]
В разделе [Files] перечисляются файлы в формате RTF, которые включаются в состав справочной системы. Например:
[Files]
SALES.RTF; инструкция пользователя
EDIT.RTF; инструкция по общим правилам ввода данных
Раздел [Map]
Раздел [Map]
Раздел [Map] является обязательным в том случае, если при организации файла справочной системы использовались контекстные ссылки или использовалось свойство HeipContextiD для вызова темы справочной системы.
Данный раздел содержит описание связи между идентификаторами тем и соответствующими им целыми значениями индекса тем. При использовании в приложении контекстного вызова справочной системы в разделе необходимо описать все идентификаторы, по которым будет осуществляться контекстный вызов.
SET HELP
SET HELP
Команда SET HELP управляет выводом справочной системы и определяет ее имя. Она имеет два варианта синтаксиса:
SET HELP ON | OFF | Предназначена для разрешения или запрета активизации стандартной справочной системы программы Visual FoxPro. Если использована команда SET HELP ON, при нажатии клавиши <F1> или при выполнении команды HELP основного меню отображается стандартная справочная система Visual FoxPro. При использовании команды SET HELP OFF средства просмотра справочной системы будут недоступны |
SET HELP TO имяФайла | Определяет дополнительный файл справочной системы. Этот вариант команды позволяет использовать созданную вами справочную систему |
Например:
SET HELP TO sales.hip
SET TOPIC
SET TOPIC
По умолчанию содержанием справочной системы является первая по порядку тема. Для изменения содержания используется команда SET TOPIC, позволяющая определить тему, которая в дальнейшем будет являться содержанием справочной системы.
Команда имеет два варианта синтаксиса:
SET TOPIC ТО [имяТемы | логическоеВыражение] SET TOPIC ID TO [индексТемы]Используя команду SET TOPIC то имяТемы, вы можете задать имя темы, отображаемой в справочной системе.
Команда SET TOPIC то логическоеВыражение отображает заданную тему в справочной системе в зависимости от значения логического выражения.
Команда SET TOPIC ID то [индексТемы] используется для указания отображаемой темы по его идентификатору.
Содержание справочной системы
Содержание справочной системы
Обычно окно справочной системы содержит три вкладки: Содержание, Указатель и Поиск. Для того чтобы в диалоговом окне присутствовала вкладка Содержание, необходимо создать файл с содержанием справки. Например, для файла справки, приведенного на рис. 12.8, не был создан файл с содержанием справочной системы. Конечно, можно в области текста темы, открываемой при вызове справочной системы, указать ссылки на все остальные темы файла справки. Но при создании файла справки в среде
Windows более предпочтительным является отображение содержания в иерархическом виде. Для создания такого содержания в Help Workshop выполните следующие действия:
В меню File (Файл) выберите команду New (Создать). В диалоговом окне New (Новый) выберите опцию Help Contents (Содержание). На экране открывается диалоговое окно, в котором можно выбрать режим создания содержания справочной системы. Выберите опцию Help Contents (Содержание). Открывается окно редактора содержания справочной системы. В поле Default filename (and window) (Стандартный титул файла и окна) введите имя файла справки, содержащего темы, на которые ссылаются элементы содержания. В поле Default title (Стандартный титул) введите заголовок окна содержания. В центре диалогового окна расположена область отображения содержания справочной системы. В нее вы можете добавить заголовки нескольких уровней вложенности и ссылки на темы справочной системы. Для добавления заголовка самого верхнего уровня нажмите на кнопку Add Below (Добавить ниже). На экране открывается диалоговое окно Edit Contents Tab Entry. Установите опцию Heading (Заголовок). В поле Title (Титул) введите наименование заголовка. Нажмите кнопку ОК для закрытия диалогового окна. Для ввода заголовка следующего уровня опять нажмите кнопку Add Below (Добавить ниже) и создайте следующий заголовок. Созданный заголовок является на самом деле подзаголовком предыдущего заголовка. Нажатием кнопки Move Right (Переместить вправо) переместите его правее на следующий уровень вложенности. Для добавления ссылки \на тему справочной системы нажмите кнопку Add Below (Добавить ниже) или Add Above (Добавить выше). В открывшемся диалоговом окне Edit Contents Tab Entry установите опцию Topic (Тема). В поле Title (Титул) введите наименование заголовка, а в поле Topic ID — идентификатор темы справки. Если тема находится в файле справки, отличном от файла, указанного в поле Default filename (and window) (Стандартный титул файла и окна), укажите в поле ввода Help file (Файл справки) имя файла справки. После ввода содержания справочной системы сохраните его.Чтобы подключить содержание к файлу справки откройте окно файла проекта и в разделе [OPTIONS] укажите имя файла с содержанием справочной системы.
Создание ключей для поиска тем
Создание ключей для поиска тем
Для создания ключей поиска перейдите на вкладку Index (Указатель). Используя кнопки панели инструментов вкладки, вы можете создать новый ключ, редактировать ранее созданный или удалить ключ (рис. 12.16).
Создание перекрестной ссылки
Создание перекрестной ссылки
Создание содержания справочной системы
Создание содержания справочной системы
Для создания содержания справочной системы в иерархическом виде перейдите на вкладку Contents (Содержание). В области содержания справочной системы (рис. 12.14) вы можете добавить заголовки нескольких уровней вложенности и непосредственно ссылки на темы справочной системы.
Создание справочной системы в формате HTML
Создание справочной системы в формате HTML
Для создания справочной системы в формате HTML можно использовать HTML Help Workshop.
Создайте темы справочной системы, сохраняя при этом каждую тему в отдельном HTML-файле. Для создания этих файлов вы можете использовать любой редактор файлов HTML, например, Microsoft Word. Запустите программу HTML Help Workshop и постройте новый проект справочной системы. С помощью мастера проекта включите в проект ранее созданные файлы с темами. Определите свойства проекта.
Создание справочной системы в формате WinHelp
Создание справочной системы в формате WinHelp
Основой справочной системы являются темы, содержащие пояснительный текст. Содержание справочной системы включает список тем, доступных в системе. Каждая тема имеет заголовок и уникальный символьный идентификатор. Дополнительно каждой теме можно поставить в соответствие уникальный индекс темы, который должен быть целым числом.
В справочной системе для поиска темы используются ключи, содержащие название темы и ссылку на нее. Каждая тема может иметь более одного ключа поиска. Кроме того, один ключ может содержать ссылку на несколько тем.
Для организации контекстного вызова темы из справочной системы вы можете использовать числовые значения индексов или значения ключа. Использование идентификаторов тем для контекстного вывода справочной информации не допускается.
Чтобы связать между собой отдельные темы, используются перекрестные ссылки. При этом текст, используемый для организации перекрестной ссылки, выделяется зеленым цветом и подчеркиванием.
В описании любой системы используются термины, специфичные для конкретной системы. Например, в системах складского учета такими терминами будут накладная, счет, отпуск товара. В качестве термина может рассматриваться не только отдельное слово, но и любая фраза из текста темы. Справочная система Windows позволяет дать каждому термину приложения краткое определение. Такие термины на экране выделены зеленым цветом и пунктирным подчеркиванием. Если щелкнуть мышью на термине, для которого определено краткое описание, это описание появится на экране в рамке поверх текста темы.
Создание справочной системы в формате WinHelp включает следующие этапы:
Создание описания справочной системы. Для этого можно использовать любой текстовый редактор, поддерживающий формат RTF. Описание содержит темы, индексы и ключи справочной системы. Структура документа должна соответствовать требованиям, предъявляемым компилятором справочной системы (Help Compiler). Формирование файла с расширением CNT, содержащего иерархическое содержание создаваемой справочной системы. Формирование текстового файла с расширением HPJ, содержащего параметры для компиляции справочной системы: имя файла с описанием справочной системы, заголовок справочной системы. Компиляция созданного текстового описания с использованием Help Compiler. Определение свойства HeipContextio для требуемых объектов формы, а также создание в приложении кнопок и пунктов меню для вызова справочной системы.Мы рассмотрим только наиболее часто используемые средства при создании справочной системы. Подробную информацию вы найдете в руководстве по применению Help Compiler. В качестве примера создадим простую справочную систему, состоящую из нескольких тем. Для каждой темы определим заголовки, идентификаторы и ключи, используемые для поиска информации.
Список псевдонимов тем
Список псевдонимов тем
Для этого откройте диалоговое окно HtmlHelp API information нажатием одноименной кнопки на панели инструментов вкладки Project (Проект) и перейдите на вкладку Alias (Псевдоним) (рис. 12.12). После нажатия кнопки Add (Добавить) и задания в диалоговом окне Alias (Псевдоним) псевдонима и имени связанного с ним файла темы (рис. 12.13) будет добавлен новый псевдоним.
Справка типа "What's This?"
Справка типа "What's This?"
Для краткого описания отдельных объектов формы можно использовать справку типа "What's This?" (Что это?), которая аналогична контекстнозависимой справке, выводимой для объекта, на котором установлен фокус. Но, в отличие от нее справка типа "What's This?" (Что это?) отображается в виде небольшого окна с текстом справочной информации и удаляется с экрана, как только вы щелкнете мышью где-либо на экране.
Для создания справка данного типа используются свойства, описанные в табл. 12.8.