====== OLE event ======
==== Applies To ====
OLE objects
==== Description ====
The OLE event is generated for each message generated by an OLE object that is requested using [[qualify_event_message|QUALIFY_EVENT]].
Note: The event qualifier ALL_OLES sends all OLE messages to the specified event handler. To determine which events are being generated by an OLE control, examine the EventName parameter after using the ALL_OLES qualifier to handle all OLE events.
Note: The event qualifier ALL_WINMSGS sends all Windows messages to the OLE object's [[winmsg_event|WINMSG]] event handler. Use the ALL_WINSMSGS event handler to process Windows messages sent to OLE objects.
==== Syntax ====
//bForward// = **OLE**(//CtrlEntID, CtrlClassID, hWnd, Message, wParam, lParam//)
==== Parameters ====
OLE events send the following parameters:
^Parameter^Description^
|EventName|The name of the OLE event|
|Param1...Param10|Up to 10 parameters, separated by commas.|
Note: Special Event Qualifier parameters for OLE events that can be optionally passed. These are:
^Param^Usage^
|1|Modify Flag. Same as for other events. 0 = clear event; 1 = set event|
|2|Event Qualifier. Same as for other events. However, this is optional if param<3> is supplied. Also for OLE events, the arg count prefix is optional and is ignored if supplied.|
|3|Event Name. Overrides the event name sent to [[send_event|Send_Event()]].|
|4|Synchronous flag. 0 = event is posted to the Windows message queue to be processed at a later time. 1 = event is fired immediately.|
|5|Suppress Name flag. 1 = Do not pass OLE event name to event handler.|
|6|Pass DispID flag. 1 = Pass OLE dispid to event handler.|
|7|Pass single parameters. 0 = Pass OLE event parameters as a single argument, delimited by field marks.|
==== See Also ====
[[qualify_event_message|QUALIFY_EVENT message]], [[catching_mouse_events_in_a_window|Catching Mouse Events in a Form]]
==== Example ====
Directing Windows Messages to a WINMSG Event handler
/* direct all Windows messages to the WINMSG event in the OLE control called HTML. */
OleEvent = 'ALL_WINMSGS'
x=Send_Message(@WINDOW:'.HTML', 'QUALIFY_EVENT', OleEvent, 1)
Directing OLE Messages to an OLE Event Handler
/* direct all OLE messages to the OLE event in the OLE control called HTML.
Fire the event immediately.
Send the parameters in a single field mark delimited variable. */
Qualifier =''
Qualifier<1> = 1
Qualifier<4> = 1 ; * synch
Qualifier<7> = 0 ; * single param
OleEvent = 'ALL_OLES'
x=Send_Message(@WINDOW:'.HTML', 'QUALIFY_EVENT', OleEvent, Qualifier)