временного интервала для помещения кода
клавиши на клавиатуре, а при значении .F. или по умолчанию
использование прежнего значения.
Возвращаемое значение
lActivated - логическое значение .T. при запущенном процессе отсчета
временного интервала для помещения кода клавиши в буфер клавиатуры,
или значение .F. при прекращении процесса.
Описание
Функцию можно использовать при создании демонстрационных программ или
программ, обрабатывающих случайные потоки информации. В сочетании с
KEYSEND() она позволяет моделировать ввод с клавиатуры практически
любой сложности. Кроме того, ее, как и KEYTIME(), в сочетании с
Clipper-командой SET KEY..TO можно использовать и для организации
прерываний по нажатию клавиш. При этом обеспечивается возможность,
например, не прерывая редактирования GET-объектов, через определенные
интервалы времени автоматически записывать на диск находящиеся в
буфере данные.
Вызов функции запускает в фоновом режиме процесс отсчета интервала
времени и помещения по его завершении кода клавиши в буфер клавиатуры.
Этот процесс повторяется <nCounter> раз, после чего прекращается.
Если задано значение .T. параметра <lMode>, то отсчет интервала
времени начинается сначала при нажатии любой клавиши.
Для завершения процесса (идущего в фоновом режиме) следует вызвать
функцию без параметров.
Примечания
. Внимание! Функция изменяет один из системных векторов прерываний.
Поэтому перед окончанием выполнения программы для восстановления
исходного значения вектора необходимо произвести вызов функции с
опущенными параметрами. Восстановление векторов производится также
утилитой INTSAVE, входящей в комплект поставки CT II, и при
прикомпоновке CT II-драйвера CT2US50.OBJ.
. Нельзя активизировать два процесса по двум вызовам описываемой
функции одновременно, т. к. следующий вызов отменяет действие