safeZoneY: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
m (Text replacement - "<code>([^<]*)\[\[([a-zA-Z][a-zA-Z0-9_]+)\]\]([^<]*) *<\/code>" to "<code>$1$2$3</code>")
m (Text replacement - "[[Image:" to "[[File:")
 
(17 intermediate revisions by the same user not shown)
Line 15: Line 15:
|gr1= GUI Control - Positioning
|gr1= GUI Control - Positioning


|descr= Returns the Y of the top border of the screen, which is also a distance in screen measurement units from top left corner of the default viewport (0,0) of the screen to the top border of the screen. Since it is going in opposite way of the Y axis, <u>the value is negative</u>. The measurement units depend on the current screen resolution [[getResolution]]. See also [[SafeZone]].
|descr= [[File:safezone.jpg|right|600px]] Returns the Y of the top border of the screen, which is also a distance in screen measurement units from top left corner of the default viewport (0,0) of the screen to the top border of the screen.
[[Image:safezone.jpg|600px]]
Since it is going in opposite way of the Y axis, <u>the value is negative</u>. The measurement units depend on the current screen resolution [[getResolution]]. See also [[SafeZone]].


|s1= [[safeZoneY]]
|s1= [[safeZoneY]]
Line 22: Line 22:
|r1= [[Number]]
|r1= [[Number]]


|x1= <code>_screenTopBorderY = safeZoneY; // returns a float value < 0</code>
|x1= <sqf>_screenTopBorderY = safeZoneY; // returns a float value < 0</sqf>


|x2= Create control 50% wide, 30% tall, centered on screen:
|x2= Create control 50% wide, 30% tall, centered on screen:
<code>private _ctrl = [[findDisplay]] 46 [[createDisplay]] "RscDisplayEmpty" [[ctrlCreate]] ["RscText", -1];
<sqf>
_ctrl [[ctrlSetBackgroundColor]] [1,0,0,0.5];
private _ctrl = findDisplay 46 createDisplay "RscDisplayEmpty" ctrlCreate ["RscText", -1];
[[private]] _ctrlWidth = 0.5 * [[safeZoneW]]; // 50% of screen width
_ctrl ctrlSetBackgroundColor [1,0,0,0.5];
[[private]] _ctrlHeight = 0.3 * [[safeZoneH]]; // 30% of screen height
private _ctrlWidth = 0.5 * safeZoneW; // 50% of screen width
_ctrl [[ctrlSetPositionW]] _ctrlWidth;
private _ctrlHeight = 0.3 * safeZoneH; // 30% of screen height
_ctrl [[ctrlSetPositionH]] _ctrlHeight;
_ctrl ctrlSetPositionW _ctrlWidth;
_ctrl [[ctrlSetPositionX]] (([[safeZoneW]] - _ctrlWidth) / 2 + [[safeZoneX]]); // center it horizontally
_ctrl ctrlSetPositionH _ctrlHeight;
_ctrl [[ctrlSetPositionY]] (([[safeZoneH]] - _ctrlHeight) / 2 + [[safeZoneY]]); // center it vertically
_ctrl ctrlSetPositionX ((safeZoneW - _ctrlWidth) / 2 + safeZoneX); // center it horizontally
_ctrl ctrlCommit 0;</code>
_ctrl ctrlSetPositionY ((safeZoneH - _ctrlHeight) / 2 + safeZoneY); // center it vertically
_ctrl ctrlCommit 0;
</sqf>


|seealso= [[SafeZone]] [[safeZoneX]] [[safeZoneW]] [[safeZoneH]] [[safeZoneXAbs]] [[safeZoneWAbs]]
|seealso= [[SafeZone]] [[safeZoneX]] [[safeZoneW]] [[safeZoneH]] [[safeZoneXAbs]] [[safeZoneWAbs]]
}}
}}

Latest revision as of 23:11, 20 November 2023

Hover & click on the images for description

Description

Description:
safezone.jpg
Returns the Y of the top border of the screen, which is also a distance in screen measurement units from top left corner of the default viewport (0,0) of the screen to the top border of the screen. Since it is going in opposite way of the Y axis, the value is negative. The measurement units depend on the current screen resolution getResolution. See also SafeZone.
Groups:
GUI Control - Positioning

Syntax

Syntax:
safeZoneY
Return Value:
Number

Examples

Example 1:
_screenTopBorderY = safeZoneY; // returns a float value < 0
Example 2:
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 safeZoneW 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