safeZoneW: Difference between revisions
Jump to navigation
Jump to search
Lou Montana (talk | contribs) m (Text replacement - "\|x([0-9])= *<code>([^<]*)<\/code>" to "|x$1= <sqf>$2</sqf>") |
Lou Montana (talk | contribs) m (Some wiki formatting) |
||
Line 15: | Line 15: | ||
|gr1= GUI Control - Positioning | |gr1= GUI Control - Positioning | ||
|descr= Returns the width of the screen in screen measurement units. Taken from top left corner of the default viewport (0,0) of the screen and going in the same direction as the X axis, the value will be positive but resulting X will end up beyond the right border. Therefore in order to calculate X of the right screen border, the length of [[safeZoneX]] must be subtracted from [[safeZoneW]], but because it is negative, it must be added instead. {{hl|c= _screenRightBorderX | |descr= [[Image:safezone.jpg|right|600px]] | ||
Returns the width of the screen in screen measurement units. Taken from top left corner of the default viewport (0,0) of the screen and going in the same direction as the X axis, the value will be positive but resulting X will end up beyond the right border. Therefore in order to calculate X of the right screen border, the length of [[safeZoneX]] must be subtracted from [[safeZoneW]], but because it is negative, it must be added instead. {{hl|c= _screenRightBorderX = [[safeZoneW]] + [[safeZoneX]]}}. The measurement units depend on the current screen resolution [[getResolution]]. See also [[SafeZone]] | |||
|s1= [[safeZoneW]] | |s1= [[safeZoneW]] | ||
Line 28: | Line 28: | ||
|x3= Create control 50% wide, 30% tall, centered on screen: | |x3= Create control 50% wide, 30% tall, centered on screen: | ||
< | <sqf> | ||
private _ctrl = findDisplay 46 createDisplay "RscDisplayEmpty" ctrlCreate ["RscText", -1]; | |||
_ctrl ctrlSetBackgroundColor [1,0,0,0.5]; | _ctrl ctrlSetBackgroundColor [1,0,0,0.5]; | ||
private _ctrlWidth = 0.5 * safeZoneW; // 50% of screen width | private _ctrlWidth = 0.5 * safeZoneW; // 50% of screen width | ||
Line 36: | Line 37: | ||
_ctrl ctrlSetPositionX ((safeZoneW - _ctrlWidth) / 2 + safeZoneX); // center it horizontally | _ctrl ctrlSetPositionX ((safeZoneW - _ctrlWidth) / 2 + safeZoneX); // center it horizontally | ||
_ctrl ctrlSetPositionY ((safeZoneH - _ctrlHeight) / 2 + safeZoneY); // center it vertically | _ctrl ctrlSetPositionY ((safeZoneH - _ctrlHeight) / 2 + safeZoneY); // center it vertically | ||
_ctrl ctrlCommit 0;</ | _ctrl ctrlCommit 0; | ||
</sqf> | |||
|seealso= [[SafeZone]] [[safeZoneX]] [[safeZoneY]] [[safeZoneH]] [[safeZoneXAbs]] [[safeZoneWAbs]] | |seealso= [[SafeZone]] [[safeZoneX]] [[safeZoneY]] [[safeZoneH]] [[safeZoneXAbs]] [[safeZoneWAbs]] | ||
}} | }} |
Revision as of 13:08, 13 May 2022
Description
- Description:
- Returns the width of the screen in screen measurement units. Taken from top left corner of the default viewport (0,0) of the screen and going in the same direction as the X axis, the value will be positive but resulting X will end up beyond the right border. Therefore in order to calculate X of the right screen border, the length of safeZoneX must be subtracted from safeZoneW, but because it is negative, it must be added instead. _screenRightBorderX = safeZoneW + safeZoneX. The measurement units depend on the current screen resolution getResolution. See also SafeZone
- Groups:
- GUI Control - Positioning
Syntax
Examples
- Example 1:
- Example 2:
- Example 3:
- Create control 50% wide, 30% tall, centered on screen:
private _ctrl = findDisplay 46 createDisplay "RscDisplayEmpty" ctrlCreate ["RscText", -1]; _ctrl ctrlSetBackgroundColor [1,0,0,0.5]; private _ctrlWidth = 0.5 * safeZoneW; // 50% of screen width private _ctrlHeight = 0.3 * safeZoneH; // 30% of screen height _ctrl ctrlSetPositionW _ctrlWidth; _ctrl ctrlSetPositionH _ctrlHeight; _ctrl ctrlSetPositionX ((safeZoneW - _ctrlWidth) / 2 + safeZoneX); // center it horizontally _ctrl ctrlSetPositionY ((safeZoneH - _ctrlHeight) / 2 + safeZoneY); // center it vertically _ctrl ctrlCommit 0;
Additional Information
- See also:
- SafeZone safeZoneX safeZoneY safeZoneH safeZoneXAbs safeZoneWAbs
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