Определяет команду, которая выполняется, если вы нажали клавишу ESС во время выполнения программы или команды.

Команда ON ESCAPE   []

Параметры

Команда

Определяет команду Visual FoxPro для выполнения. После того, как команда выполнится, программа продолжает выполнение немедленно со строки, следующей за строкой программы, которая выполнялась, когда вы нажали ESC. Однако, если процедура, определенная в ON ESCAPE, включает RETRY, строка программы, которая выполнялась, когда вы нажали ESC, выполняется снова.

Expand imageЗамечания

Обычно ON ESCAPE использует DO для выполнения процедуры.

Если определены ON ESCAPE и ON KEY, и вы нажали ESC, Visual FoxPro выполняет команду, определенную в ON ESCAPE.

Используйте ON ESCAPE без команды,чтобы команда не выполнялась, если нажата ESC(по умолчанию).

NoteNote

Visual FoxPro не выполняет подпрограммы ON ESCAPE,если SET ESCAPE отключена (OFF).

Expand imageПример

Следующий пример устанавливает бесконечный цикл, но определяет подпрограмму ON ESCAPE, чтобы выйти из него.

  CopyCode imageCopy Code
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

Expand imageСмотрите также