Основы языка Visual FoxPro


Реакция на события - часть 2


Кто и как расписал это "прежде" сейчас Вас не интересует, главное то, что программа может себя вести стандартным образом, пусть даже никак, весь пустая реакция это тоже реакция. Наиболее полно система, управляемая событиями, реализуется в объектной модели программирования, и мы рассмотрим ее позже, но в VFP есть еще несколько способов управлением реакцией на события. Первое, что необходимо знать, это понятие обработчика событий. Когда Вы отлаживаете Ваше приложение в среде VFP, или просто экспериментируете с VFP, Вам об этом заботиться не надо, так как сам VFP уже имеет свой обработчик событий, другое дело, когда стартует Ваше уже законченное приложение. Вы должны включить его при старте и выключить при окончании работы Вашего приложения. При всей своей сложности это делается весьма просто:

* Старт

READ EVENTS

* Завершение

CLEAR EVENTS

И все. Где именно это размещать мы покажем позже. А пока просто примите это к сведению.

Наиболее ярким примером средств управления событиями, за исключением классов, пожалуй, является меню VFP. Система программирования VFP является весьма мощной, настолько, что Вы всегда можете не просто создать меню в своем приложении, но и изменить, дополнить или кардинальным способом поменять меню самого VFP. Это делается с помощью команд управления меню, которых довольно много. Однако, к счастью, концепция RAD, и именно построитель меню позволяет Вам создать сложное, полнофункциональное меню, вообще не прибегая к написанию кода. Сам процесс построения меню мы рассмотрим позже, здесь лишь отметим, что его результатом обычно является полученная программа (файл с расширением *.MPR) , которая будучи однократно запущенной, довольно быстро завершит свое выполнение и начнет отслеживать события (мышку, горячие клавиши) как обычное Windows-меню.

Кроме этого примера, можно привести команды VFP ON :

ON KEY LABEL - отслеживает нажатия на клавиши или мышь

ON ERROR - отслеживает ошибки выполнения

Попробуйте следующее. В среде VFP в командном окне введите строку:




Начало  Назад  Вперед



Книжный магазин