Функция ON()

Возвращает команду, назначенную любой из следующих команд обработки событий: ON APLABOUT, ON ERROR, ON ESCAPE, ON KEY, ON KEY LABEL, ON MACHELP, ON PAGE или ON READERROR.

Синтаксис:

ON(cONCommand [, KeyLabelName])

Параметры:
cONCommand
Задает одну из указанных выше команд обработки событий. В следующей таблице приводятся эти команды и соответствующие им символьные выражения, которые следует использовать в функции ON( ):

КомандаcONCommand
ON APLABOUTAPLABOUT
ON ERRORERROR
ON ESCAPEESCAPE
ON KEYKEY
ON KEY LABELKEY
ON MACHELPMACHELP
ON PAGEPAGE
ON READERRORREADERROR

Например, чтобы возвратить команду, которая в данный момент закреплена за ON ERROR, выдайте:

? ON('ERROR')

KeyLabelName
Используется в случае команды ON KEY LABEL, чтобы задать клавишу или комбинацию клавиш, которым назначена команда. Нужно указать KEY в качестве cONCommand, а в аргументе KeyLabelName задать название клавиши или комбинации клавиш. Полный список названий клавиш приведен в описании команды ON KEY LABEL.
Например, чтобы возвратить команду, которая в данный момент назначена функциональной клавише F7 с помощью ON KEY LABEL, выдайте

? ON('KEY', 'F7')

Результат:
Символьный.

Комментарии:
Когда происходит событие, регистрируемое одной из команд обработки событий, выполняется назначенная ей команда FoxPro. Функция ON( ) возвращает команду, назначенную команде обработки событий. Если заданной команде обработки событий в настоящий момент не назначено никаких команд, ON( ) возвращает пустую строку.

* В следующем примере с помощью функции ON( ) отображаются установки
* команд ON ERROR и ON KEY LABEL.

ON ERROR DO errorhand
ON KEY LABEL CTRL+F2 WAIT WINDOW 'You pressed ^F2'
ON KEY LABEL ALT+Z DISPLAY MEMORY
CLEAR
? ON('ERROR')  && Displays DO errorhand
? ON('KEY', 'CTRL+F2')  && Displays WAIT WINDOW 'You pressed ^F2'
? ON('KEY', 'ALT+Z')  && Displays DISPLAY MEMORY
ON ERROR
ON KEY LABEL CTRL+F2
ON KEY LABEL ALT+Z

Предыдущий Шаг | Следующий Шаг | Оглавление
Автор Каев Артем.