Определяет наличие символа в буфере клавиатуры.
Синтаксис:
CHRSAW([nSeconds])
Параметры:
nSeconds
Задает интервал времени в секундах, в течение которого функция CHRSAW( ) ожидает перед тем, как приступить к проверке буфера клавиатуры. Если аргумент nSeconds опущен, буфер проверяется немедленно.
Благодаря аргументу nSeconds функцию CHRSAW( ) можно использовать в самых разных операциях, требующих контроля по времени. Например, программа может закрывать приложение, если в течение определенного интервала времени не была нажата ни одна клавиша.
Результат:
Логический
Комментарии:
Функция CHRSAW( ) возвращает значение "истина" (.T.), если в буфере клавиатуры есть символ, и "ложь" (.F.) в противном случае. CHRSAW( ) не влияет на содержимое буфера клавиатуры.
Пример:
* В следующем примере система отображает на экране окно с полями * ввода, созданными с помощью команд @ ... GET, и ждет ввода с * клавиатуры в течение пяти секунд. Если никакая клавиша не будет * нажата, функция CHRSAW( ) возвратит "ложь" (.F.) и программа прекратит * работу. SET TALK OFF DEFINE WINDOW wEnter FROM 7,10 to 13,70 PANEL ACTIVATE WINDOW wEnter @ 1,3 SAY 'Customer: ' GET gcCustomer DEFAULT SPACE(40) @ 3,3 SAY 'Address: ' GET gcAddress DEFAULT SPACE(40) WAIT WINDOW 'Waiting for input' NOWAIT IF NOT CHRSAW(5) DEACTIVATE WINDOW wEnter CLEAR GETS ELSE READ DEACTIVATE WINDOW wEnter ENDIF RELEASE WINDOW wEnter WAIT CLEAR