Возвращает первую клавишу, нажатую в течении периода timeout.
int _InKey(int timeout, int flag) int timeout; /* Интервал тайм-аута. */ int flag; /* Опция (опции). */ |
Примечания
Период времени ожидания timeout определяется как число импульсов таймера операционной системы (тысячная секунды). Если интервал тайм-аута равен 0, Visual FoxPro будет ждать до тех пор, пока пользователь не нажмет какую-либо клавишу. Отрицательная величина тайм-аута вынуждает _InKey( ) немедленно возвратить управление в вызывающую программу, если пользователь не нажал клавишу.
Вы можете определить flag как одну или обе из следующих опций:
-
SHOWCURSOR или HIDECURSOR
-
MOUSEACTIVE
SHOWCURSOR задает отображение курсора на экране, а HIDECURSOR убирает курсор с экрана. Если ни одно из этих значений не задано, отображение курсора регулируется установкой SYS(2002). Еще одно значение флага, MOUSEACTIVE, заставляет программу _InKey( ) трактовать нажатие кнопок мыши как нажатие клавиш. При нажатии кнопки мыши _InKey возвращает 151. Чтобы задать два значения флага, используйте оператор языка C | или +.
![]() |
---|
Неработающие программы не должны вызывать _InKey( ). |
Вызов _InKey( ) можно включать в обработчики событий, но при этом следует соблюдать осторожность, поскольку _InKey( ) может делать рекурсивные обращения к обработчику событий.
Для получения дополнительной информации о том, как создавать библиотеку API и интегрировать её в Visual FoxPro, смотрите Доступ к API Visual FoxPro.
Пример
В следующем примере _InKey( ) вызывается из Visual FoxPro с двумя флагами
Код Visual FoxPro
![]() | |
---|---|
SET LIBRARY TO INKEY #define SHOWCURSOR 1 #define HIDECURSOR 2 #define MOUSEACTIVE 4 = XINKEY(0, SHOWCURSOR + MOUSEACTIVE) |
Код C
![]() | |
---|---|
#include <pro_ext.h> FAR Example(ParamBlk FAR *parm) { _RetInt(_InKey((int) parm->p[0].val.ev_long, (int) parm->p[1].val.ev_long), 10); } FoxInfo myFoxInfo[] = { {"XINKEY", (FPFI) Example, 2, "I,I"}, }; FoxTable _FoxTable = { (FoxTable FAR *) 0, sizeof(myFoxInfo)/sizeof(FoxInfo), myFoxInfo }; |
Смотрите также
Справочное руководство
Функция INKEY( )Свойство ReadTimeout
Концепции
Процедуры библиотеки API от A до ZПрочие ресурсы
Доступ к API Visual FoxProПроцедуры библиотеки API по категориям
![Footer image](../local/footer.gif)
© Microsoft Corporation. All rights reserved. Microsoft is not reponsible for the contents of the translated help topics.