ctrlSetPosition: Difference between revisions
Jump to navigation
Jump to search
Lou Montana (talk | contribs) m (Text replacement - "_{10,} " to "") |
Lou Montana (talk | contribs) m (Text replacement - " *\| *([Cc]omments|COMMENTS|Game|[Gg]ame [Nn]ame|Game [Vv]ersion|Game Version \(number surrounded by NO SPACES\)|Multiplayer Arguments( \("local" or "global"\))?|Effects|Multiplayer Effects( \("local" or "global"\))?|Multiplayer Exe...) |
||
Line 1: | Line 1: | ||
{{Command | {{Command | ||
| arma1 | | arma1 | ||
|1.00 | |1.00 | ||
|gr1= GUI Control | |gr1= GUI Control | ||
| Sets wanted position and size for 2D control animation. Width and height are optional. [[ctrlCommit]] is required to complete the operation. For 3D control, param is relative [x,y,z] and no [[ctrlCommit]] is required as it cannot be animated. | | Sets wanted position and size for 2D control animation. Width and height are optional. [[ctrlCommit]] is required to complete the operation. For 3D control, param is relative [x,y,z] and no [[ctrlCommit]] is required as it cannot be animated. | ||
| controlName '''ctrlSetPosition''' [x, y] | | controlName '''ctrlSetPosition''' [x, y] | ||
|p1= controlName: [[Control]] - 2D control | |p1= controlName: [[Control]] - 2D control | ||
|p2= [x, y]: [[Array]] | |p2= [x, y]: [[Array]] | ||
| [[Nothing]] | | [[Nothing]] | ||
| s2= controlName '''ctrlSetPosition''' [x, y, w, h] | | s2= controlName '''ctrlSetPosition''' [x, y, w, h] | ||
|p21= controlName: [[Control]] - 2D control|PARAMETER21= | |p21= controlName: [[Control]] - 2D control|PARAMETER21= | ||
Line 24: | Line 24: | ||
|p22= [x, y, w, h]: [[Array]] |PARAMETER22= | |p22= [x, y, w, h]: [[Array]] |PARAMETER22= | ||
|r2= [[Nothing]] | |r2= [[Nothing]] | ||
|s3= controlName '''ctrlSetPosition''' [x, y, z] | |s3= controlName '''ctrlSetPosition''' [x, y, z] | ||
|p41= controlName: [[Control]] - 3D control|PARAMETER41= | |p41= controlName: [[Control]] - 3D control|PARAMETER41= | ||
Line 33: | Line 33: | ||
|p42= [x, y, z]: [[Array]] - y is distance from the screen |PARAMETER42= | |p42= [x, y, z]: [[Array]] - y is distance from the screen |PARAMETER42= | ||
|r3= [[Nothing]] | |r3= [[Nothing]] | ||
|x1= Move control: <code>_control2D [[ctrlSetPosition]] [0, 0]; | |x1= Move control: <code>_control2D [[ctrlSetPosition]] [0, 0]; | ||
_control2D [[ctrlCommit]] 0;</code> | _control2D [[ctrlCommit]] 0;</code> | ||
|x2= Move control and resize:<code>_control2D [[ctrlSetPosition]] [0, 0, 1, 1]; | |x2= Move control and resize:<code>_control2D [[ctrlSetPosition]] [0, 0, 1, 1]; | ||
_control2D [[ctrlCommit]] 0;</code> | _control2D [[ctrlCommit]] 0;</code> | ||
|x3= <code>_control3D [[ctrlSetPosition]] [0.5, 1, 0.5]; //centered and 1m away from screen</code> | |x3= <code>_control3D [[ctrlSetPosition]] [0.5, 1, 0.5]; //centered and 1m away from screen</code> | ||
|x4= Typewriter effect: <code>[[with]] [[uiNamespace]] [[do]] | |x4= Typewriter effect: <code>[[with]] [[uiNamespace]] [[do]] | ||
Line 81: | Line 81: | ||
[[ctrlDelete]] ctrl; | [[ctrlDelete]] ctrl; | ||
}; | }; | ||
};</code> | };</code> | ||
| [[ctrlCommit]], [[ctrlCreate]], [[ctrlDelete]], [[ctrlModel]], [[ctrlSetModel]], [[ctrlPosition]], [[ctrlClassName]], [[displayCtrl]], [[ctrlModelScale]], [[ctrlSetModelScale]], [[ctrlModelDirAndUp]], [[ctrlSetModelDirAndUp]] | | [[ctrlCommit]], [[ctrlCreate]], [[ctrlDelete]], [[ctrlModel]], [[ctrlSetModel]], [[ctrlPosition]], [[ctrlClassName]], [[displayCtrl]], [[ctrlModelScale]], [[ctrlSetModelScale]], [[ctrlModelDirAndUp]], [[ctrlSetModelDirAndUp]] | ||
}} | }} | ||
Revision as of 00:27, 18 January 2021
Description
- Description:
- Sets wanted position and size for 2D control animation. Width and height are optional. ctrlCommit is required to complete the operation. For 3D control, param is relative [x,y,z] and no ctrlCommit is required as it cannot be animated.
- Groups:
- GUI Control
Syntax 1
- Syntax:
- controlName ctrlSetPosition [x, y]
- Parameters:
- controlName: Control - 2D control
- [x, y]: Array
- Return Value:
- Nothing
Syntax 2
- Syntax:
- controlName ctrlSetPosition [x, y, w, h]
- Parameters:
- controlName: Control - 2D control
- [x, y, w, h]: Array
- Return Value:
- Nothing
Syntax 3
- Syntax:
- controlName ctrlSetPosition [x, y, z]
- Parameters:
- controlName: Control - 3D control
- [x, y, z]: Array - y is distance from the screen
- Return Value:
- Nothing
Examples
- Example 1:
- Move control:
_control2D ctrlSetPosition [0, 0]; _control2D ctrlCommit 0;
- Example 2:
- Move control and resize:
_control2D ctrlSetPosition [0, 0, 1, 1]; _control2D ctrlCommit 0;
- Example 3:
_control3D ctrlSetPosition [0.5, 1, 0.5]; //centered and 1m away from screen
- Example 4:
- Typewriter effect:
with uiNamespace do { [] spawn { _text1 = "This is a simple demo of typewriter text effect with various speed."; _text2 = "This took 10 seconds."; _text3 = "This is a fast one, set for 2 seconds."; ctrl = findDisplay 46 ctrlCreate ["RscStructuredText", -1]; ctrl ctrlSetPosition [0,0,0,0.1]; ctrl ctrlCommit 0; ctrl ctrlSetStructuredText parseText format ["<t color='#ff0000' size='2.1'>%1</t>", _text1 splitString " " joinString " "]; ctrl ctrlSetPosition [0,0,ctrlTextWidth ctrl,0.1]; ctrl ctrlCommit 8; waitUntil {ctrlCommitted ctrl}; sleep 0.5; ctrl ctrlSetPosition [0,0,0,0.1]; ctrl ctrlCommit 0; ctrl ctrlSetStructuredText parseText format ["<t color='#ff0000' size='2.1'>%1</t>", _text2 splitString " " joinString " "]; ctrl ctrlSetPosition [0,0,ctrlTextWidth ctrl,0.1]; ctrl ctrlCommit 2; waitUntil {ctrlCommitted ctrl}; sleep 2; ctrl ctrlSetPosition [0,0,0,0.1]; ctrl ctrlCommit 0; ctrl ctrlSetStructuredText parseText format ["<t color='#00ff00' size='2.1'>%1</t>", _text3 splitString " " joinString " "]; ctrl ctrlSetPosition [0,0,ctrlTextWidth ctrl,0.1]; ctrl ctrlCommit 2; waitUntil {ctrlCommitted ctrl}; sleep 2; ctrlDelete ctrl; }; };
Additional Information
- See also:
- ctrlCommitctrlCreatectrlDeletectrlModelctrlSetModelctrlPositionctrlClassNamedisplayCtrlctrlModelScalectrlSetModelScalectrlModelDirAndUpctrlSetModelDirAndUp
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
- Posted on May 22, 2017 - 23:04 (UTC)
- Lucian
- If the target ctrl is part of a ctrlGroup, the position needs to be relative to the ctrlGroup position.
- Posted on July 20, 2017 - 11:56 (UTC)
- Yuval
- If the target control is a controls' group, all the child controls of that group will be moved automatically (as their position is relative to the control group rather than the display)