ctrlCreate: Difference between revisions
Jump to navigation
Jump to search
m (fixed note) |
Killzone Kid (talk | contribs) (controls group added) |
||
Line 20: | Line 20: | ||
* <tt>RscVideo</tt> - picture control with autostart for video texture (see [[BIS_fnc_playVideo]]) | * <tt>RscVideo</tt> - picture control with autostart for video texture (see [[BIS_fnc_playVideo]]) | ||
* <tt>RscVideoKeepAspect</tt> - picture control for video to keep original video aspect ratio | * <tt>RscVideoKeepAspect</tt> - picture control for video to keep original video aspect ratio | ||
* <tt>RscButtonMenuBIKI</tt> - shortcut button with url pointing to "https://community.bistudio.com/wiki/" (since v1.97)|DESCRIPTION= | * <tt>RscButtonMenuBIKI</tt> - shortcut button with url pointing to "https://community.bistudio.com/wiki/" (since v1.97) | ||
* <tt>RscControlsGroup</tt> - default controls group | |||
* <tt>RscControlsGroupNoScrollbars</tt> - controls group without scrollbars | |||
* <tt>RscControlsGroupNoHScrollbars</tt> - controls group without horizontal scrollbar | |||
* <tt>RscControlsGroupNoVScrollbars</tt> - controls group without vertical scrollbar|DESCRIPTION= | |||
____________________________________________________________________________________________ | ____________________________________________________________________________________________ | ||
Revision as of 14:15, 26 November 2019
Description
- Description:
- Creates a new control in the given display. The control class could be existing class from main config or custom class defined in mission config (mission config is searched first). Some of the common controls defined in main config that can be used with this command:
- RscText - simple text box
- RscTextMulti - simple multiline text box
- RscPicture - simple picture box
- RscPictureKeepAspect - picture box that doesn't stretch picture
- RscEdit - input box
- RscEditMulti - multiline input box
- RscEditReadOnly - input box with canModify = false; (since v1.97)
- RscEditMultiReadOnly - multiline input box with canModify = false; (since v1.97)
- RscTree - tree view control
- RscTreeSearch - searchable tree view control (see Example 4)
- RscVideo - picture control with autostart for video texture (see BIS_fnc_playVideo)
- RscVideoKeepAspect - picture control for video to keep original video aspect ratio
- RscButtonMenuBIKI - shortcut button with url pointing to "https://community.bistudio.com/wiki/" (since v1.97)
- RscControlsGroup - default controls group
- RscControlsGroupNoScrollbars - controls group without scrollbars
- RscControlsGroupNoHScrollbars - controls group without horizontal scrollbar
- RscControlsGroupNoVScrollbars - controls group without vertical scrollbar
- Groups:
- Uncategorised
Syntax
- Syntax:
- display ctrlCreate [class, idc, controlsGroup]
- Parameters:
- display: Display - Display in which control will be created
- [class, idc, controlsGroup]: Array
- class: String - Existing classname (see ctrlCreate/classnames) of the new control (Since Arma 3 v1.69.141213 it is possible to use classes defined in mission config)
- idc: Number - IDC of the new control (use -1 if you don't care what it should be)
- controlsGroup (Optional): Control - Creates controls in existing controls group
- Return Value:
- Control
Examples
- Example 1:
_display ctrlCreate ["RscText", 1234];
- Example 2:
_map = findDisplay 46 ctrlCreate ["RscMapControl", -1]; _multiLineText = findDisplay 46 ctrlCreate ["RscTextMulti", -1]; _multiLineEdit = findDisplay 46 ctrlCreate ["RscEditMulti", -1];
- Example 3:
myControl = findDisplay 0 ctrlCreate ["RscText", 1234, findDisplay 0 displayCtrl 2300];
- Example 4:
- Create Tree View control with search. Available RscTreeSearch class is hardcoded to be used with RscEdit with idc 645. Example below demonstrates how to. After tree is generated, try typing something in the top box.
[] spawn { disableSerialization; _display = findDisplay 46 createDisplay "RscDisplayEmpty"; _edit = _display ctrlCreate ["RscEdit", 645]; _edit ctrlSetPosition [0,0,1,0.04]; _edit ctrlSetBackgroundColor [0,0,0,1]; _edit ctrlCommit 0; _tv = _display ctrlCreate ["RscTreeSearch", -1]; _tv ctrlSetFont "EtelkaMonospacePro"; _tv ctrlSetFontHeight 0.03; _tv ctrlSetPosition [0,0.06,1,0.94]; _tv ctrlSetBackgroundColor [0,0,0,1]; _tv ctrlCommit 0; _classes = "true" configClasses (configFile >> "CfgVehicles"); for "_i" from 0 to 5 do { _tv tvAdd [[], configName selectRandom _classes]; for "_j" from 0 to 5 do { _tv tvAdd [[_i], configName selectRandom _classes]; for "_k" from 0 to 5 do { _tv tvAdd [[_i, _j], configName selectRandom _classes]; for "_n" from 0 to 5 do { _tv tvAdd [[_i, _j, _k], configName selectRandom _classes]; }; }; }; }; };
Additional Information
- See also:
- allControlsallDisplayscontrolsGroupCtrlctrlDeletectrlModelctrlSetModelctrlPositionctrlSetPositionctrlClassNamectrlModelScalectrlSetModelScalectrlModelDirAndUpctrlSetModelDirAndUpdisplayParent
Notes
-
Report bugs on the Feedback Tracker and/or discuss them on the Arma Discord or on the Forums.
Only post proven facts here! Add Note
Notes
Bottom Section
- Posted on September 16, 2019 - 07:09 (UTC)
- R3vo
-
Regarding search speed in example 4:
The search is incredible slow if items are only added to the first level. As soon as multiple levels are added, the search becomes faster.
Therefore it's not recommended to use a TreeView control as listbox just to have access to the engine driven incremental search.