4D v16.3

OBJECT SET EVENTS

Home

 
4D v16.3
OBJECT SET EVENTS

OBJECT SET EVENTS 


 

OBJECT SET EVENTS ( {* ;} object ; arrEvents ; mode ) 
Parameter Type   Description
Operator in If specified, object is an object name (string) If omitted, object is a field or variable
object  Form object in Object name or "" to designate the form (if * is specified) or
Field or variable (if * is omitted)
arrEvents  Longint array in Array of events to set
mode  Longint in Activation mode for events defined in arrEvents

The OBJECT SET EVENTS command modifies, for the current process, the configuration of the form events of the form or object(s) designated by the object and * parameters.

Passing the optional * parameter indicates that the object parameter is an object name (string). If you do not pass this parameter, it indicates that the object parameter is a field or variable. In this case, you pass a field or variable reference instead of a string (field or variable object only).
To define the configuration of events for the form itself, pass the optional * parameter and an empty string "" in object: in this case, you designate the current form. 

Note: If you want to modify the events of a subform related to a table, you can only use the syntax based on the object name. 

In the arrEvents parameter, pass a Longint array containing the list of predefined or custom form events that you want to modify (you can use the mode parameter to specify whether the modification consists of enabling or disabling the events). To designate a predefined event to modify, you can pass, in each element of the arrEvents array, one of the following constants, found in the "Form Events" theme:

Constant Type Value Comment
On Activate Longint 11 The form’s window becomes the frontmost window
On After Edit Longint 45 The contents of the enterable object that has the focus has just been modified
On After Keystroke Longint 28 A character is about to be entered in the object that has the focus. Get edited text returns the object's text including this character.
On After Sort Longint 30 (List box only) A standard sort has just been carried out in a list box column
On Arrow Click Longint 38 (3D buttons only) The “arrow” area of a 3D button is clicked
On Before Data Entry Longint 41 (List box only) A list box cell is about to change to editing mode
On Before Keystroke Longint 17 A character is about to be entered in the object that has the focus. Get edited text returns the object's text without this character.
On Begin Drag Over Longint 46 An object is being dragged
On Begin URL Loading Longint 47 (Web areas only) A new URL is loaded in the Web area
On bound variable change Longint 54 The variable bound to a subform is modified.
On Clicked Longint 4 A click occurred on an object
On Close Box Longint 22 The window’s close box has been clicked
On Close Detail Longint 26 You left the detail form and are going back to the output form
On Collapse Longint 44 (Hierarchical lists and hierarchical list boxes) An element of the hierarchical list or hierarchical list box has been collapsed using a click or a keystroke
On Column Moved Longint 32 (List box only) A list box column is moved by the user via drag and drop
On Column Resize Longint 33 (List box only) The width of a list box column is modified by a user with the mouse
On Data Change Longint 20 Object data has been modified
On Deactivate Longint 12 The form’s window ceases to be the frontmost window
On Delete Action Longint 58 (Hierarchical lists and List boxes) The user attempts to delete an item
On Display Detail Longint 8 A record is about to be displayed in a list or a row is about to be displayed in a list box.
On Double Clicked Longint 13 A double click occurred on an object
On Drag Over Longint 21 Data could be dropped onto an object
On Drop Longint 16 Data has been dropped onto an object
On End URL Loading Longint 49 (Web areas only) All the resources of the URL have been loaded
On Expand Longint 43 (Hierarchical lists and hierarchical list boxes) An element of the hierarchical list or hierarchical list box has been expanded using a click or a keystroke
On Footer Click Longint 57 (List boxes only) A click occurs in the footer of a list box or a list box column
On Getting Focus Longint 15 A form object is getting the focus
On Header Longint 5 The form’s header area is about to be printed or displayed
On Header Click Longint 42 (List box only) A click occurs in a column header of the list box
On Load Record Longint 40 During entry in list, a record is loaded during modification (the user clicks on a record line and a field changes to editing mode)
On Long Click Longint 39 (3D buttons only) A 3D button is clicked and the mouse button remains pushed for a certain lapse of time
On Losing Focus Longint 14 A form object is losing the focus
On Mac toolbar button Longint 55 The user clicks on the tool bar management button under Mac OS.
On Menu Selected Longint 18 A menu item has been chosen
On Mouse Enter Longint 35 The mouse cursor enters the graphic area of an object
On Mouse Leave Longint 36 The mouse cursor leaves the graphic area of an object
On Mouse Move Longint 37 The mouse cursor moves at least one pixel OR a modifier key (Shift, Alt, Shift Lock) was pressed. If the event is checked for an object only, it is generated only when the cursor is within the graphic area of the object
On Open Detail Longint 25 The detail form associated with the output form or with the listbox is about to be opened
On Open External Link Longint 52 (Web areas only) An external URL has been opened in the browser
On Outside Call Longint 10 The form received a CALL PROCESS call
On Picture Scroll Longint 59 The user scrolls the contents of a picture field or variable using the mouse or keyboard.
On Plug in Area Longint 19 An external object requested its object method to be executed
On Printing Break Longint 6 One of the form’s break areas is about to be printed
On Printing Detail Longint 23 The form’s detail area is about to be printed
On Printing Footer Longint 7 The form’s footer area is about to be printed
On Resize Longint 29 The form window is resized
On Row Moved Longint 34 (List box only) A list box row is moved by the user via drag and drop
On Selection Change Longint 31
  • List box: The current selection of rows or columns is modified
  • Records in list: The current record or the current selection of rows is modified in a list form or subform
  • Hierarchical list: The selection in the list is modified following a click or a keystroke
  • Enterable field or variable: The text selection or the position of the cursor in the area is modified following a click or a keystroke
On Timer Longint 27 The number of ticks defined by the SET TIMER command has passed
On Unload Longint 24 The form is about to be exited and released
On URL Filtering Longint 51 (Web areas only) A URL was blocked by the Web area
On URL Loading Error Longint 50 (Web areas only) An error occurred when the URL was loading
On URL Resource Loading Longint 48 (Web areas only) A new resource is loaded in the Web area
On Validate Longint 3 The record data entry has been validated
On Window Opening Denied Longint 53 (Web areas only) A pop-up window has been blocked

It is important to note that the On Load event is not included in this list: this event cannot be defined because it has already been generated during the execution of the command.

In arrEvents, you can also pass any value corresponding to a custom event. In this case, we recommend using negative values (see the CALL SUBFORM CONTAINER command). 

You use the mode parameter to set the overall processing to be carried out for the array elements. To do this, you can pass one of the following constants, found in the "Form Objects (Properties)" theme:

Constant Type Value Comment
Disable events others unchanged Longint 2 All the events listed in the arrEvents array are disabled; the status of other events remain unchanged
Enable events disable others Longint 0 All the events listed in the arrEvents array are enabled; all the other events are disabled
Enable events others unchanged Longint 1 All the events listed in the arrEvents array are enabled; the status of other events remain unchanged

The OBJECT SET EVENTS command can lead to the enabling of events that are not supported by the object (depending on its type). In this case, the events will simply be ignored.

If an object is duplicated after a call to the OBJECT SET EVENTS command, the resulting enabled/disabled configuration is also duplicated.

Enabling three form events for a set of list box objects and disabling other events:

 ARRAY LONGINT($MyEventsOnLB;3)
 $MyEventsOnLB {1}:=On After Sort
 $MyEventsOnLB {2}:=On Column Moved
 $MyEventsOnLB {3}:=On Column Resize
 OBJECT SET EVENTS(*;"MyLB@";$MyEventsOnLB;Enable events disable others)
  // enables 3 events and disables all others

Disabling three form events for a set of list box objects, without modifying the other events:

 ARRAY LONGINT($MyEventsOnLB;3)
 $MyEventsOnLB {1}:=On After Sort
 $MyEventsOnLB {2}:=On Column Moved
 $MyEventsOnLB {3}:=On Column Resize
 OBJECT SET EVENTS(*;"MyLB@";$MyEventsOnLB;Disable events others unchanged)
  // disables only these 3 events

Enabling a form event for an object, without modifying the other events:

 ARRAY LONGINT($MyEventsOnLB;1)
 $MyEventsOnLB {1}:=On Column Moved
 OBJECT SET EVENTS(*;"Col1";$MyEventsOnLB;Enable events others unchanged)
  // only enables this event

Disabling all events of the form:

 ARRAY LONGINT($MyFormEvents;0)
 OBJECT SET EVENTS(*;"";$MyFormEvents;Enable events disable others)
  // disables all events

Disables a single event of the form without modifying the others:

 ARRAY LONGINT($MyFormEvents;1)
 $MyFormEvents{1}:=On Timer
 OBJECT SET EVENTS(*;"";$MyFormEvents;Disable events others unchanged)
  // only disables this event



See also 

Form Events
OBJECT GET EVENTS

 
PROPERTIES 

Product: 4D
Theme: Objects (Forms)
Number: 1239

 
HISTORY 

Created: 4D v14

 
ARTICLE USAGE

4D Language Reference ( 4D v16)
4D Language Reference ( 4D v16.1)
4D Language Reference ( 4D v16.2)
4D Language Reference ( 4D v16.3)