Опубликован: 15.11.2010 | Доступ: свободный | Студентов: 643 / 18 | Оценка: 4.00 / 5.00 | Длительность: 17:30:00
Специальности: Программист
Лекция 4:

Вывод на дисплей: Часть III

< Лекция 3 || Лекция 4: 123 || Лекция 5 >

4.4. Приложение №1. Команды и опции функции be

В данном разделе даётся описание функции работы с командными файлами при помощи приложения Norton Utilities 8.0 BE.

BE ASK

BE ASK Ожидание нажатия заданной клавиши
СИНТАКСИС: BE ASK "приглашение" [список-клавиш][DEFAULT=клавиша][TIMEOUT=n][ADJUST=n][цвет][/DEBUG]
НАЗНАЧЕНИЕ: Запрашивает ввод с клавиатуры и устанавливает код переменной DOS ERRORLEVEL
ПОЯСНЕНИЯ: BE ASK приглашает пользователя ответить на вопрос. Это позволяет создавать интерактивные пакетные файлы, которые поддерживают условные переходы.

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

ВОЗМОЖНЫЕ ПАРАМЕТРЫ:

сообщение Текстовая строка - подсказка, выводится при запуске команды. Если в строке есть запятые и/или пробелы, то всю строку следует заключить в кавычки. Используйте пару кавычек без каких-либо символов между ними, если не нужно выводить строку сообщения.
список-клавиш Список возможных клавиш для ответа (символы или числа);
DEFAULT Клавиша, возвращаемая по тайм-ауту, если в течение заданного периода ничего не было нажато или если нажата клавиша Enter ;
TIMEOUT Время в секундах, по истечении которого возвращается код клавиши, заданной по-умолчанию. Если n=0 или тайм-аут не установлен, ASK будет ожидать до тех пор, пока не будет нажата клавиша;
ADJUST Увеличивает возвращаемое значение на заданное число;
цвет Задание цвета сообщения в формате SA (Screen Attribute). См. BE SA;

Параметр /DEBUG выводит возвращаемый код ERRORLEVEL на экран.

Если пользователь нажимает клавишу, которая не обозначена в списке клавиш, звучит сигнал предупреждения.

ПРИМЕР:

Следующий фрагмент пакетного файла можно использовать как часть системы меню:

be ask "Run the E(ditor), D(atabase) or Q(uit)?" edq
if errorlevel 3 goto quit
if errorlevel 2 goto database
if errorlevel 1 goto editor

BE BEEP

СИНТАКСИС:
BE BEEP [/Dn] [/Fn] [/Rn] {/Wn}
BE BEEP [путь [/E]]
НАЗНАЧЕНИЕ: Задаёт частоту и длительность звука, выдаваемого на динамик.
ПОЯСНЕНИЯ: BE BEEP использует системный динамик для создания звуков заданной частоты и длительности. Используйте их для сигнализации ошибочной ситуации или завершения задачи.
ВОЗМОЖНЫЕ ПАРАМЕТРЫ: /Dn длительность звука в долях 1/18 секунды
/Fn частота тона в герцах
/Rn повторить вывод сигнала n раз
/Wn образовать паузу между сигналами длительностью n/18 секунды
/E отобразить указанный в кавычках текст в комментарии

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

ПРИМЕЧАНИЕ:

NDOS самостоятельно не обрабатывает пакетные файлы BE. Если пакетный файл задан в командной строке, NDOS попытается найти программу Norton BE.EXE и подставить командную строку как параметр в неё.

ПРИМЕР:

Исполнить ноту "ля" в течение 2 секунд и повторить 3 раза. Сделать паузу в 1 секунду между нотами:

be beep /f440 /d36 /r3 /w18

Следующий пакетный файл 2NOTE воспроизводит две различные ноты:

/f330 /d10 /r2 /w5; это была "ми"
/f440 /d10 /r2 /w5; эта была "соль"

Для того чтобы отобразить слова: "ми" и "соль", используйте:

be beep 2note /e

BE BOX

Построить рамку на экране

СИНТАКСИС: BE BOX верх, слева, низ, справа [SINGLE | DOUBLE] [цвет]
НАЗНАЧЕНИЕ: Рисует прямоугольник в указанной позиции на экране.
ПОЯСНЕНИЯ: BE BOX рисует прямоугольники различной формы, размеров и цветов в указанной позиции экрана. Прямоугольники могут иметь одиночную или двойную границу. Прямоугольники не заполняются каким-либо символом, так что любой текст внутри них сохраняется.
ВОЗМОЖНЫЕ ПАРАМЕТРЫ: вверх строка левого верхнего угла
слева столбец левого верхнего угла
низ строка нижнего правого угла
справа столбец нижнего правого угла
SINGLE одиночная линия границы
DOUBLE двойная линия границы
цвет цвет рамки, задаваемый атрибутами SA (атрибуты экрана) для рамки (см. BE SA).

По-умолчанию рамка рисуется двойной линией.

См. также DRAWBOX.

ПРИМЕР:

Нарисовать красную рамку на зелёном фоне с границей в виде одиночной линии:

be box 10 10 20 40 single red on green

BE CLS

Очистить экран (и установить цвет)

СИНТАКСИС: BE CLS [цвет]
НАЗНАЧЕНИЕ: Очищает экран, используя заданные атрибуты (необязательно).
ПОЯСНЕНИЯ: BE CLS будет очищать экран, используя атрибуты текущего положения курсора или атрибуты, заданные в командной строке. Одна из причин, по которой очистка экрана производится некоторым атрибутом, состоит в том, что другие команды BE, такие как ROWCOL, ASK, и BOX, будут использовать текущие атрибуты экрана, если цвет не задан в командной строке. Устанавливая некоторый атрибут экрана заранее, можно сделать другие команды BE меньше по размеру и быстрее по выполнению.
Имеет единственный параметр: цвет использовать цвет, заданный в формате SA (см. BE SA).

См. также CLS.

ПРИМЕР:

Очистить экран и установить красный цвет на зелёном фоне:

be cls red on green

BE command

BE команда
СИНТАКСИС: BE команда
НАЗНАЧЕНИЕ: Расширенные возможности для пакетных файлов.
ПОЯСНЕНИЯ: Для более быстрого выполнения пакетных файлов NDOS непосредственно поддерживает следующие команды Norton Batch Enhancer:
BE ASK BE REBOOT
BE BEEP BE ROWCOL
BE BOX BE SA
BE CLS BE SHIFTSTATE
BE DELAY BE TRIGGER
BE MONTHDAY BE WEEKDAY
BE PRINTCHAR BE WINDOW
Каждая команда BE описана под её собственным заголовком.

Пользуйтесь:

BE команда /?

для получения оперативной справки по интересующей команде BE..

ПРИМЕЧАНИЕ:

Если внутренняя команда NDOS BE не может найти указанную команду, например, пакетный файл для BE в виде:

BE файл процедуры [[GOTO] метка]

то NDOS будет искать BE.EXE (используя путь) и выполнит BE, подставляя остаток команды. Следующие команды BE не имеют значения в NDOS, поскольку встречаются только в пакетных файлах BE:

BE EXIT
BE GOTO
BE JUMP
BE DELAY

BE DELAY

Сделать паузу

СИНТАКСИС: BE DELAY число
НАЗНАЧЕНИЕ: Приостанавливает выполнение пакетного файла на заданное время.
ПОЯСНЕНИЯ: BE DELAY приостанавливает выполнение пакетного файла на заданный интервал. Выполнение пакетного файла возобновляется по истечении заданного периода времени.
Имеет единственный параметр: число количество 1/18-секундных интервалов.

См. также DELAY.

ПРИМЕР:

Сделать паузу в полсекунды:

be delay 9
< Лекция 3 || Лекция 4: 123 || Лекция 5 >
Дмитрий Карпов
Дмитрий Карпов
Россия, Нижний Новгород
Олег Корсак
Олег Корсак
Латвия, Рига