Файл: ...\Samples\Solution\Toledo\FrmEvents.scx
Этот образец демонстрирует првязку событий, инициирование событий программным способом, освобождение событие и извлечение информации о событии для системной переменной _SCREEN иди для главного окна Visual FoxPro. В примере, вы можете вручную привязать событие для _SCREEN путем выбора события из комбобокса или вызвать те же самые события и их соответствующие обработчики с помощью мыши.
Для получения более подробной информации о _SCREEN, смотрите описание Системная переменная _SCREEN.
Привязка событий
Для ответа на события Visual FoxPro, используйте функцию BINDEVENT( ). В этом примере, функция BINDEVENT( ) вызывается в пользовательском методк InitBindEvent и привязывает несколько событий _SCREEN к методам формы. Когда происходит одно из событий _SCREEN, вызывается метод соответствующего обработчика:
![]() | |
---|---|
BINDEVENT(_SCREEN,"Resize",ThisForm,"screenresize") BINDEVENT(_SCREEN,"Mousedown",ThisForm,"screenmousedown") BINDEVENT(_SCREEN,"Mouseup",ThisForm,"screenmouseup") BINDEVENT(_SCREEN,"Rightclick",ThisForm,"screenrightclick") BINDEVENT(_SCREEN,"Dblclick",ThisForm,"screendblclick") |
Для получения более подробной информации, смотрите описание BINDEVENT() и Событие Init.
Инициирование события программным способом
Для программного инициирования события, используйте функцию RAISEEVENT(). В этом примере, когда производится выборка в комбобоксе, событие InteractiveChange использует возвращаемое значение для программного инициирования указанного события.
![]() | |
---|---|
RAISEEVENT(_SCREEN,this.Value) |
Для получения более подробной информации, смотрите описания Функция RAISEEVENT() и Событие InteractiveChange.
Unbinding Events
Для освобождения обработчиков события, используйте функцию UNBINDEVENTS(). В этом примере, освобождение событий для _SCREEN производится в пользовательском методе UnbindHandlers .
![]() | |
---|---|
UNBINDEVENTS(_SCREEN) |
Для получения более подробной информации, смотрите описания Функция UNBINDEVENTS().
Извлечение информации о привязках событий
Для извлечения существующих привязок событий в массив, используйте функцию AEVENTS(). В этом примере, пользовательский метод ScreenDblClick, который привязан к событию _SCREEN DblClick, использует функцю AEVENTS( ) для вывода числа связанных событий:
![]() | |
---|---|
AEVENTS(laEvents,Thisform) |
Для получения более подробной информации, смотрите описания Функция AEVENTS() и Событие DblClick.