Controls
Overview
A screen requires controls to interface and interact with the operator. This means having controls to display and collect information.
There are three types of controls ("Display Controls"; "Input Controls" and "Menu/Selection Controls") that can be used in a project. When opting for a specific control, always take into account the purpose and characteristics of the selected element.
Types of Controls
Display Controls
These controls only display information, it is not possible to use them for data input.
Some controls have an event/action attached to them ("Display Text"; "Display Header"; "Display Image" and "SoftKey").
Other controls may simply add a visual element to a screen ("Display Line"; "Display Shape").
Some Display Controls are exceptions. For instance, although the "Gauge" is mostly a visual element in a screen, in the sense that you cannot associate an event/action to it, it also contains a dynamic element because the control displays data/values provided by variables.
Input Controls
These controls are used to receive data from the operator. When dealing with Input Controls, always take into account the type of data that is collected. The input data is always stored in temporary memory locations called variables. See Variable Types.
"Input Keyboard" - receives data through the keyboard (virtual or hardware keyboard).
"Input Barcode" - only accepts barcode capture.
"Input Date"/"Input Time - used, specifically, for date and time information.
"Input Spin"/"Slider" - used to input numeric values, typically for quantity.
"Input Cash" - used to input monetary values.
"Input List" - used to input data in a controlled manner, by selecting from a list of options.
"Signature Capture" - only accepts signature capture.
Menu/Selection Controls
The main control's feature is to present the operator with predetermined options, in the form of menu or list, to select from.
The Menu Controls display a menu that allow the operator to jump to a specific application point ("Menu Button"; "Menu Text" and "Button").
The Selection Controls offer predetermined options for the operator to select from. These selections derive from data already in the application and are always stored within variables ("Combo Box"; "CheckBox"; "Radio Button"; "File Browse", "Advanced List Box" and "Grid").
Events are specific actions performed by the operator that trigger actions within the application. These actions, which are defined by the programmer, are designated, in MCL-Designer V4 environment, as processes. There is always a default event associated to a control. Some controls can include more events than just the default one.
There are several types of events associated to controls depending on their type ("Display", "Input" or "Menu/Selection Controls"):
1. Click
Is associated to some Display Controls as well as some Menu/Selection Controls. When the operator clicks a control, an action immediately follows.
2. Timer
Associated to all Input Controls and some Menu/Selection Controls. This event is an exception because it is executed if the operator is inactive. It consists of a countdown after which the operational flow is pushed forward or backwards.
If you intend to add a "Timer" event to a control, make sure there is NO "Timer" event already associated to the screen that contains that control.
You CANNOT add "Timer" events simultaneously to a control and to the screen containing that control.
3. Change
Associated to all Input Controls as well as some Menu/Selection Controls. It is executed after data input by the operator.
4. Hotkey
Can be executed with all Input Controls and some Menu/Selection Controls. It is used to define an action following a keystroke in a virtual or hardware keyboard.
This event can be used simultaneously in a screen and in one or more controls, so, it is important to understand how the system will handle Hotkey event priority. The Hotkey events will be triggered as follows:
1. The Hotkey event associated to a control when it comes into focus (ex: a hotkey defined by the developer within a Grid control which triggers a specific process/action).
2. The use of embedded keys within the control with focus (ex: navigating the fields of a "Grid" control with the use of arrow keys).
3. The Hotkey event associated to the screen that contains the control with focus but triggers other processes(actions).
When using this event, consider the target device and its SIP (Virtual keyboard). In the case of Windows Mobile devices, if the target device uses a custom SIP instead of the OS default SIP, it may return an unexpected system key. This means the Hotkey event will NOT be triggered and the associated process(es) will NOT be executed.
In the case of Android devices, due to its OS implementation that manages data input (ex: the SIP), the use of Hotkey events in controls that enable keyboard input (ex: "Input Keyboard", "Input Barcode", etc.) is NOT recommended. The data entered with the Android device's SIP is considered text and does NOT trigger the Hotkey events you added to the control.
Avoid the following combined uses of Hotkey events/softkeys:
•The adding of Softkeys and Hotkey events that refer to the SAME KEY in the same screen.
•The adding of Softkeys and Hotkey events that refer to "<ENTER>" in a screen that contains controls that use "<ENTER>" for their default validation (ex: an Input Keyboard or an Input Barcode).
Note that the <All F. Key> option in the Key Code field refers to the <CTRL+Func Key> and <Shift+Func Key> combinations.
This event can also be used to enable the use of a swipe to navigate the screens.
5. Button #
Only associated to an "Advanced List Box" control that contains the button element. Depending on the amount of button elements that the "Advanced List Box" style contains, there will be a corresponding number of default "Button #" events. When the operator clicks a button included in the control, it triggers an action.