Adds a handler function to the end of the list of event handlers.
|
---|
unsigned int _ActivateHandler(FPFI handler)
FPFI handler /* Event handler to be added. */ |
Remarks
Example
The following example activates an event handler when the library is loaded. The event handler prints a message for every event and lets Visual FoxPro process the event as it does normally. The event handler is deactivated when the library is unloaded.
Visual FoxPro Code
| Copy Code |
---|
SET LIBRARY TO ACTIHAND
WAIT WINDOW TO m.test TIMEOUT 5
SET LIBRARY TO |
C Code
| Copy Code |
---|
#include <pro_ext.h>
static int HandlerID;
// This is the routine that is registered as an event handler.
FAR EventHandler(WHandle theWindow, EventRec FAR *ev)
{
_PutStr("\nEventHandler() called.");
return NO; // event still needs to be handled by Visual FoxPro
}
FAR Activate()
{
HandlerID = _ActivateHandler(EventHandler);
}
// When the library is unloaded we must deactivate the event handler
// in a CALLONUNLOAD function.
FAR DeActivate()
{
_DeActivateHandler(HandlerID);
}
FoxInfo myFoxInfo[] = {
{"ACTIVATE", Activate, CALLONLOAD, ""},
{"DEACTIVATE", DeActivate, CALLONUNLOAD, ""}
};
FoxTable _FoxTable = {
(FoxTable FAR *) 0, sizeof(myFoxInfo)/sizeof(FoxInfo), myFoxInfo
}; |
See Also