Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учебник 381.docx
Скачиваний:
19
Добавлен:
30.04.2022
Размер:
2.47 Mб
Скачать

4.2. Интерфейс управления

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

Наиболее просто организуется интерфейс при входном языке типа меню (рисунок 4.1). Вариант модуля интерфейса может быть построен по следующему алгоритму:

1. Активизировать функциональное окно для вывода меню, например выделить его определенным цветом.

2. Вывести в окно тексты пунктов меню.

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

4. Ввести ответ пользователя.

5. Если ответ неверный, вывести сообщение об ошибке и вернуться к пункту 2.

6. Выход из модуля с передачей вызывающему модулю значения выбора пользователя.

В этом алгоритме предполагается, что пользователь вводит номер выбранного пункта. Можно упростить действия пользователя, если предоставить ему возможность непосредственно указывать выбранный пункт меню. Для этого один из пунктов меню (обычно первый) выделяется особым цветом, подчеркиванием или заключением в рамку. Пользователь указывает свой выбор, используя клавишу перемещения курсора вверх-вниз, а сделав выбор, нажимает клавишу "Ввод". В этом варианте работы можно исключить возможные ошибки пользователя, если интерфейсный модуль не будет реагировать на нажатие остальных клавиш, пока пользователь не сделает свой выбор.

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

Например, главное меню ППП комплексной автоматизации управления предприятия ГАЛАКТИКА (версия 5.1) содержит перечень основных функций пакета (рисунок 4.1).

Рис. 4.1. Главное меню ППП Галактика

После выбора строки меню Финансовый анализ открывается окно этой программы (рисунок 4.2).

Рис. 4.2. Подменю ППП Галактика

Выбор строки меню Бух.Анализ , а затем Бухгалтерские расчеты (не показано) приводит к появлению окна Разделы с новыми строками меню Аналитический баланс и Финансовые коэффициенты. Выбор последнего открывает окно Документы с новыми строками меню. Для проведения оценки рентабельности выбирается соответствующая строчка и на основе финансовых показателей предприятия проводятся расчеты. Затем генерируется отчет (рисунок 4.3).

Несколько сложнее строится модуль интерфейса управления для входного языка командного типа. В этом случае фактически приходится решать две задачи: ввод кода команды и ввод операндов команды. Поскольку возможны команды без операндов, с фиксированным числом операндов и с переменным числом операндов, целесообразно предварительно сгруппировать команды по числу и способам задания операндов.

Рис. 4.3. Генерация отчета как конечный пункт иерархической структуры меню Финансовый анализ | Бух.Анализ | Бухгалтерские расчеты | Финансовые коэффициенты | Оценка рентабельности

Тогда алгоритм интерфейсного модуля можно описать следующим образом:

1. Активизация функционального окна для ввода команды и вывод приглашения к вводу.

2. Ввод кода команды.

3. Проверка правильности кода по списку команд и определение порядкового номера команды в этом списке.

4. Если введен неверный код команды, то вывод сообщения об ошибке и, возможно, подсказки в виде списка допустимых команд, затем переход к пункту 1.

5. Определение типа команды по числу и способу задания операндов и вызов соответствующей подпрограммы для ввода операндов.

6. Если пользователь не ввел операнды в требуемой форме, то вывод сообщения об отказе в выполнении команды и переход к пункту 1.

7. Если команда не требует операндов или если операнды введены правильно, то выход с передачей в вызывающий модуль порядкового номера команды и списка операндов.

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

Использование командной строки для ввода управляющей информации показано в среде сервисной программы управления файлами и архивами FAR v.1.65 (Е. Рошаль) на примере программы архивации ARJ32 (ARJ Software) (рисунок 4.4).

В командной строке, начинающейся с указания места нахождения C:\Program Files, вслед за именем программы arj32 задаются (через пробелы):

1) имя команды: а («добавить файлы или каталоги в архив»);

2) операнды команды: v1200 («создавать многотомный архив с объемом каждого тома 1200 Кбайт»); archive (имя создаваемого архива); («добавлять каталоги»); bp chat (имена каталогов, которые нужно добавить в архив; они тоже разделяются пробелом).

Кстати, если в командной строке задать только имя программы arj32, то на экране появится справочный интерфейс программы.

Рис. 4.4. Интерфейс управления с командной строкой

В большинстве случаев при разработке интерфейса управления приходится искать разумный компромисс между сложностью модулей интерфейса и простотой работы пользователя.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]