VARLIST_BOX Properties |
The Variable List Box control operates like a Standard list box but will allow variable input, which means that the user can select any element from a list of items associated with the list box but can also enter any other value.
This control can be created either by using the VARLIST_BOX directive or by using the NOMADS Panel Designer to draw a Variable List Box Control and apply the desired attributes.
Below is a list of properties used to define and manipulate Variable List Box controls. For a list of properties for Standard list boxes, see LIST_BOX Properties.
Use the links in the Property column to access the PxPlus Help page for a selected property. The Help page may provide additional details, particularly if the property can be used to define other controls.
For a complete list of all the properties available, see Properties List.
Property |
Description | ||||||||||||||
When set, the control will generate a 'Change' event whenever its value changes as opposed to the default Off state where the control will only generate the change event when losing focus. Possible values are:
| |||||||||||||||
Background color. For information on valid color names and color specifications, see Color Properties. (Default: "DEFAULT") | |||||||||||||||
This property, when set to any value, will cause the control to be moved to the top of the display order. Once at the top of the display order, the control will appear visually on top of any other control on the window. (Default: Not Applicable - Always returns 0) | |||||||||||||||
Screen position (column) of control. | |||||||||||||||
Width of control in column units. | |||||||||||||||
Control type ("VARLIST_BOX"). See VARLIST_BOX directive. | |||||||||||||||
Current item with focus/selected. (Default: 1; 0 if no data) | |||||||||||||||
Background color when the control is disabled. For information on valid color names and color specifications, see Color Properties. (VarList Box support was added in PxPlus 2019.) | |||||||||||||||
This property indicates the index number that dragged items were dropped onto; if items are not dropped onto a specific line, 0 is returned. | |||||||||||||||
Enabled indicator: 1 = True; 0 = False (Default: 1) | |||||||||||||||
Last change terminator. See also LIST_BOX directive. | |||||||||||||||
This property, when set, causes the system to search the list box or grid for the text supplied. If the text is found, the system will set the 'Column and 'Item (or 'Row) property for the control to the entry where the match was found. If no match is found, the 'Column and 'Item ('Row for the grid) property is set to zero. A typical use of this property would be to locate a value in the list box and then change or delete it. It can also be used to validate that an entry exists in the list box. This property is generally only written to. Reading this value will return the same as reading the 'ItemText$ property. Controlling the Search (List View/Grid Only): The search is controlled by the settings found in 'FindOptions$. These options are provided as a series of characters in 'FindOptions$:
Search Range (List View/Grid Only): When searching, if the "W"rap option is not specified, the search will start from the beginning of the data in the control and proceed through the end. If the "R"everse option is set, the search starts at the end and proceeds to the beginning. If the "W"rap option is set, the search will start from the position immediately after that specified in the 'Item ('Row for Grid) and 'Column and search through all the data wrapping around the end/start back to the starting point. If the property 'FindColNo (or 'Column for Grid) is set, only data in that column will be searched. If the "S"ort option is specified, only the column specified in the 'Sort property will be checked and its setting (Ascending/Descending) will be used to determine the assumed sort sequence. If 'Sort is not set, the system will assume that the column specified in 'FindColNo has been pre-sorted in Ascending order. If 'FindColNo is not set, then the system will assume the first column is to be used and is in ascending sequence. If both "W"rap and "S"ort options are specified, the system will use the starting point set in 'Item ('Row on Grid) and 'Column and determine the search direction based on the value at the starting point. If the value at the start point matches that of the search value, the "R" option will determine the search direction. See also 'FindColNo and 'FindOptions$ properties. Note:
| |||||||||||||||
Focus indicator: 1 = Control has focus (Default: 0) | |||||||||||||||
Background color when the control has focus. For information on valid color names and color specifications, see Color Properties. (VarList Box support was added in PxPlus 2018.) | |||||||||||||||
Foreground text color when the control has focus. For information on valid color names and color specifications, see Color Properties. (VarList Box support was added in PxPlus 2018.) | |||||||||||||||
This property is used to reference the font for a control. It will contain (or can be set to) a string containing three comma-separated fields of the font name, size and attributes. See 'FONT' mnemonic. Example: To set the font to Arial, 1.5 times normal size, and Bold, the format would be xxx'Font$="Arial,1.5,B". | |||||||||||||||
Color of the frame/border around the control. (The FrameColor$ property was added in PxPlus 2024.) | |||||||||||||||
Height of control in pixels. | |||||||||||||||
Windows handle for control. | |||||||||||||||
Index number of item in list. | |||||||||||||||
Number of items in list. See Load on Demand. | |||||||||||||||
Value of the current item set by 'Item. | |||||||||||||||
Hot key to jump to control. | |||||||||||||||
Left margin for control in pixels. | |||||||||||||||
Input length of line. | |||||||||||||||
Screen position of control. | |||||||||||||||
Height of control in number of lines. | |||||||||||||||
Insertion point for list/drop box loads. This property controls where the data loaded to a list_box, drop_box, varlist_box or vardrop_box will be inserted. When a list/drop box LOAD directive is issued with no index, the current contents of the control will first be cleared and the new data will replace it. Setting the 'LoadPoint property to a non-zero value alters this behavior. If 'LoadPoint is set to -1, the data included with the list/drop box LOAD directive will be appended to the list box contents. If 'LoadPoint is set to -2, the data included with the list/drop box LOAD directive will replace the current contents of the list starting at the item number set in the 'Item property, which will be updated to the next item number once the load is complete (new items will be added, if required). If 'LoadPoint is set to a value > 0, the data will be inserted into the list at the point specified and the value in 'LoadPoint will be reset. Note:
| |||||||||||||||
Defines how a control will look. Possible values are:
| |||||||||||||||
This property reports/sets the CTL value to generate when an object is selected on a right-click of the mouse. | |||||||||||||||
Message line text for the control. | |||||||||||||||
User object method. (Default: 0 - No object specified) The 'ObjectID property allows applications to intercept property values and add methods to controls. When set to a valid Object ID by the application, you can add methods and add/override property logic for any control in the system. When set in the system, it allows the application to logically request methods against the control that, in turn, will be performed by the related Object ID. It will also first check the object for any property requests and, if the property is defined in the object, set or get that property instead of the controls. To allow the specified object to get true access to the control, while executing within the object identified by the 'ObjectID property, the system will direct any property requests directly to the control. Note: | |||||||||||||||
On Focus CTL event: 0 is returned if no On Focus CTL value is set up for the control. | |||||||||||||||
This property, when set to a non-zero value, causes the system to generate an internal CTL event following any changes to a list box. It can be used to monitor changes to a list style control so that external action (such as updating screen or files) can be performed. (Default: 0) If the value of this property is non-zero, the system will use its value as a CTL event to generate. If zero (default state), no event will be generated. To avoid multiple signals being generated, the system will defer the generation for approximately 1/2 second following the last update. This means that when multiple rows/cells are being updated, the event will generally only occur once the updating is complete. | |||||||||||||||
This property controls the CTL event that will be fired prior to the system displaying the Tip for any control. If the value of this property is non-zero, the system will use its value of a CTL event to fire and will defer the display of the tip until the application changes the value in 'Tip$. If the value in 'Tip$ is not changed, no tip will be displayed. Setting this to zero (Default) disables the event from being sent and the current 'Tip$ will be displayed. | |||||||||||||||
Parent window handle. | |||||||||||||||
Set scroll wheel increment. This property is used to define how many lines each click of the scroll wheel will move a list box or grid. Possible values are:
| |||||||||||||||
This property reports the number of characters currently highlighted. This allows for cut, copy and paste within a graphical user interface input region. | |||||||||||||||
This property indicates where the highlight begins within the data or, if nothing is highlighted, the current cursor location. This allows for cut, copy and paste within a graphical user interface input region. | |||||||||||||||
Text contained within the highlight: This allows for cut, copy and paste within a graphical user interface input region. See Multiple Selections. | |||||||||||||||
Separator character between each field, column or data point. | |||||||||||||||
Separator character for each row or data set. | |||||||||||||||
This property controls whether a 'Change' signal will be generated when the control (or region of a grid control) is exited regardless of whether the control's value changes. Normally, controls only signal changes when the control loses focus and the contents have changed. Setting 'SignalOnExit allows a change signal to also be generated whenever focus leaves the control (or region for grid).
| |||||||||||||||
Controls the translation of the values selected in a control and how the value will be passed to/from the application. Generally, it contains a table of single-character values representing selections from the controls with each character representing each of the values in the control in sequence. The size of each entry can be changed using the 'TblWidth property. | |||||||||||||||
This property can be used to set the length of each of the items in the 'Tbl$ property. It can be set to any positive value. (Default: 1) Setting 'TblWidth to 0 (zero) indicates that 'Tbl$ contains a delimited string with the last character of the string being the delimiter character. | |||||||||||||||
Foreground text color. For information on valid color names and color specifications, see Color Properties. (Default: "DEFAULT") | |||||||||||||||
Tip message for control. | |||||||||||||||
Top of control in pixels. | |||||||||||||||
Current item value. | |||||||||||||||
Change control's value without generating OnChange event: Same as 'Value$; however, when used to change the value in the control, no OnChange event will occur. Normally, on list style or input controls which have Signal All Changes enabled, changing the control value under either program control or by user input will generate an OnChange event. Changing the value of a control using the ValueNoSignal$ property allows the control's value to change without generating the OnChange event. | |||||||||||||||
Control visible flag: 1 = Yes; 0 = No (Default: 1) | |||||||||||||||
Width of control in pixels. | |||||||||||||||
Controls the list of properties to be returned in '_PropValues$. Each value is separated by the value in '_PropSep$. This property can be used to speed up the processing of multiple property accesses but reducing the number of interactions with the control. See Multi-Property Access. | |||||||||||||||
Controls the separator used between each of the values of the properties returned in '_PropValues$ as defined by '_PropList$. This property can be used to speed up the processing of multiple property accesses but reducing the number of interactions with the control. See Multi-Property Access. | |||||||||||||||
Accesses the values of the properties defined in '_PropList$. Each value is separated by the value in '_PropSep$. This property can be used to speed up the processing of multiple property accesses but reducing the number of interactions with the control. See Multi-Property Access. |
Multiple Selections
Load on Demand
Color Properties
'COLOUR' & '_COLOUR' Mnemonic
Using Property Names
Compound Properties