# Graphical User Intefaces

Control Objects |

Control objects are the graphical components within a panel that allow users to interact with the application. This section describes the different types of controls that can be added to a panel using a directive and how various attributes, settings and logic may be applied to controls:

| Button | List Box | Scrollbar
| Chart | Menu Bar | Variable Drop Box
| Check Box and Tri-State | Multi-Line | Variable List Box
| Drop Box | Popup Menu |
| Grid | Radio Button |

To create these controls using the NOMADS Panel Designer, see Creating Panel Controls.

When control objects are manipulated, they can generate CTL Values (control signal codes) into the input buffer to signal events that have occurred, such as receiving focus or changing values. EOM values (End-Of-Message strings) are also updated to indicate how an event occurred; i.e. via mouse-click or by pressing Enter.

The CTL value of each object is determined when the control object is defined. A program generally monitors the input queue for these values and triggers logic associated with the various events. The Example Programs show how to build an event-driven application.

When monitoring the input queue for CTL values, you can also monitor for negative CTL values that indicate certain keystrokes, mouse-clicks and other events, such as resizing the panel. See Negative CTL Definitions.

#### Note:
When focus is on certain control objects, such as a List Box or Grid, many keystrokes (Up Arrow, Down Arrow, Page Up, Page Down, etc.) are utilized directly by the control object itself and are not available to the input queue.