# Program Interaction

Events Logic |

Event-driven programming is a style of programming in which the program flow is determined by specific events that trigger related logic. In NOMADS, you can associate logic with events for specific controls, and that logic will be executed whenever that event occurs; e.g. specifying On Change logic for an Exit button will cause that logic to be executed whenever Exit is clicked.

The actual coding of the logic is explained under Event-Handler Routines. This Help section looks at how to associate an event with its related event-handler; that is, bind the event to its event handler.

NOMADS enables run-time logic to be executed automatically for the following events:

Event | Processing
Background Loading | (Drop Boxes, List Boxes and Grids) Executed upon no user input. See Background Loading.
Cells | (Grids Only) Executed when an event occurs for a particular cell, column, or row. See Independent Cell or Row Logic.
Load on Demand | (List Boxes Only) Executed when a load on demand signal occurs. See Load On Demand.
On Change | Executed whenever focus leaves the associated control.
On Exit | (Panel Objects Only) Executed just before the panel is terminated.
On Focus | Executed whenever the associated control receives input focus.
Post Create | Executed just after the control is drawn.
Post Display | Executed just after the panel and all the controls are drawn.
Pre Display | Executed prior to the display of the panel.
Prior Create | Executed prior to the creation of a button.

These events and actions are specific to the panel/control object with which they are associated. See Panel Header and Creating Panel Controls.

#### Note:
During processing, NOMADS assumes that the selected library's default directory, prefix and message library are current while the library is being processed.

## See Also

Action and Parameters
Default Program
Program Editor