Задает команду, которая выполнится, если во время работы программы или команды нажать клавишу Esc.
Синтаксис:
ON ESCAPE [Command]
Параметры:
Command
Задает команду Visual FoxPro, которую следует выполнить. После выполнения этой команды возобновляется выполнение программы со строки, которая непосредственно следует за строкой, выполнявшейся в момент нажатия Esc. Однако если процедура, заданная командой ON ESCAPE, включает RETRY, будет еще раз выполнена строка, которая выполнялась в момент нажатия Esc.
Комментарии:
Как правило, в команде ON ESCAPE используется команда DO, выполняющая некоторую процедуру.
Если в момент нажатия Esc наряду с командой ON ESCAPE была активна команда ON KEY, Visual FoxPro выполнит команду, заданную с помощью ON ESCAPE.
Чтобы никакая команда не выполнялась в момент нажатия Esc (такой вариант принимается по умолчанию), используйте ON ESCAPE без команды.
Замечание. Visual FoxPro не выполнит процедуру ON ESCAPE, если действует установка SET ESCAPE OFF.
Пример:
* В следующем примере формируется бесконечный цикл, выход из * которого осуществляется с помощью процедуры ON ESCAPE. SET ESCAPE ON ON ESCAPE DO stopit WAIT WINDOW 'Press Esc to stop loop' NOWAIT glMoreLoop = .T. DO WHILE glMoreLoop ENDDO RETURN PROCEDURE stopit glMoreLoop = .F. RETURN