Выполняет связывание (соединение) Событий объекта COM server с соответствующими (исполняющими) методами специального объекта Visual FoxPro.
Дополнительную информацию о механизмах Связывания событий внешних объектов с внутренними объектами Visual FoxPro смотрите в разделе: Связывание Событий для объектов Visual FoxPro.
EVENTHANDLER(oCOMObject, oVFPObject [, lUnbind]) |
Параметры
- oCOMObject
-
Определяет объектную ссылку на внешний объект COM-Server, события которого будут контролироваться (будут привязаны). oCOMObject должен быть допустимым объектом COM.
- oVFPObject
-
Определяет объектную ссылку на существующий объект Visual FoxPro, содержащий соответствующие пользовательские методы обработки требуемых событий внешнего объекта COM. Данный класс объекта должен иметь соответствующую характеристику Implement the events Interface, (смотрите пример ниже: ...DEFINE CLASS...IMPLEMENTS RecordSetEvents...) для привязки к объекту COM, ссылка которого указана в первом аргументе. Например, как показано ниже, для существующего интерфейса RecordsetEvents внешнего объекта ADO Recordset создается собственный обработчик Событий MyClass (VFP).
- lUnbind
-
Система Visual FoxPro автоматически Развязывает соответствующие объекты (аргументы 1 и 2) при их разрушении (уничтожении или стирании). Если данный параметр указан, и имеет значение = .T., то созданное ранее Соединение между указанными объектами закрывается, объекты развязываются, однако остаются актовными, но уже независимыми....
Возвращаемое
значение
Логического типа (Logical). EVENTHANDLER( ) возвращает значение = True (.T.) если соединение выполнено, в противном случае возвращается значение = False (.F.).
Комментарии
Вы можете соединить (связать) один объект COM с несколькими соответствующими объектами Visual FoxPro, или наоборот, вы можете соединить (связать) несколько объектов COM с одним соответствующим объектом Visual FoxPro.
Созданный Обработчик Событий автоматически закрывается когда один из связанныхт объектов: или соответствующий объект Visual FoxPro или объект COM закрываются (выгружаются из памяти). Вы можете также непосредственно выполнить данную функцию EVENTHANDLER( ), указав последний (3-й) параметр lUnbind = True (.T.), что развязывает данные объекты, однако объекты остаются активными в Приложении.
Пример
![]() | |
---|---|
LOCAL oEvents |