GuiBase2d
An abstract class inherited by 2D GuiObjects.
| Memory category | Instances |
|---|
Member index 18
Description
GuiBase2d is an abstract class inherited by 2D GuiObjects.
History 90
- 683 Add
- 553 Change Default of from to
- 553 Change Default of SelectionGroup from to
- 553 Change Default of SelectionBehaviorUp from to
- 553 Change Default of SelectionBehaviorRight from to
- 553 Change Default of SelectionBehaviorLeft from to
- 553 Change Default of SelectionBehaviorDown from to
- 553 Change Default of RootLocalizationTable from to
- 553 Add
- 553 Change Default of from to
- 553 Change PreferredDescriptor of from to AutoLocalize
- 553 Change Default of from to
- 553 Change Default of from to
- 553 Change Default of from to
- 553 Change Default of AutoLocalize from to
- 553 Change Default of AbsoluteSize from to
- 553 Change Default of AbsoluteRotation from to
- 553 Change Default of AbsolutePosition from to
- 527 Change Tags of SelectionGroup from [NotBrowsable] to []
- 527 Change Tags of SelectionBehaviorUp from [NotBrowsable] to []
- 527 Change Tags of SelectionBehaviorRight from [NotBrowsable] to []
- 527 Change Tags of SelectionBehaviorLeft from [NotBrowsable] to []
- 527 Change Tags of SelectionBehaviorDown from [NotBrowsable] to []
- 525 Add SelectionChanged
- 523 Change WriteSecurity of SelectionGroup from RobloxScriptSecurity to None
- 523 Change Tags of SelectionGroup from [Hidden, NotReplicated, NotBrowsable] to [NotBrowsable]
- 523 Change ReadSecurity of SelectionGroup from RobloxScriptSecurity to None
- 523 Change CanSave of SelectionGroup from false to true
- 523 Change CanLoad of SelectionGroup from false to true
- 523 Change WriteSecurity of SelectionBehaviorUp from RobloxScriptSecurity to None
- 523 Change Tags of SelectionBehaviorUp from [Hidden, NotReplicated, NotBrowsable] to [NotBrowsable]
- 523 Change ReadSecurity of SelectionBehaviorUp from RobloxScriptSecurity to None
- 523 Change CanSave of SelectionBehaviorUp from false to true
- 523 Change CanLoad of SelectionBehaviorUp from false to true
- 523 Change WriteSecurity of SelectionBehaviorRight from RobloxScriptSecurity to None
- 523 Change Tags of SelectionBehaviorRight from [Hidden, NotReplicated, NotBrowsable] to [NotBrowsable]
- 523 Change ReadSecurity of SelectionBehaviorRight from RobloxScriptSecurity to None
- 523 Change CanSave of SelectionBehaviorRight from false to true
- 523 Change CanLoad of SelectionBehaviorRight from false to true
- 523 Change WriteSecurity of SelectionBehaviorLeft from RobloxScriptSecurity to None
- 523 Change Tags of SelectionBehaviorLeft from [Hidden, NotReplicated, NotBrowsable] to [NotBrowsable]
- 523 Change ReadSecurity of SelectionBehaviorLeft from RobloxScriptSecurity to None
- 523 Change CanSave of SelectionBehaviorLeft from false to true
- 523 Change CanLoad of SelectionBehaviorLeft from false to true
- 523 Change WriteSecurity of SelectionBehaviorDown from RobloxScriptSecurity to None
- 523 Change Tags of SelectionBehaviorDown from [Hidden, NotReplicated, NotBrowsable] to [NotBrowsable]
- 523 Change ReadSecurity of SelectionBehaviorDown from RobloxScriptSecurity to None
- 523 Change CanSave of SelectionBehaviorDown from false to true
- 523 Change CanLoad of SelectionBehaviorDown from false to true
- 522 Add SelectionGroup
- 522 Add SelectionBehaviorUp
- 522 Add SelectionBehaviorRight
- 522 Add SelectionBehaviorLeft
- 522 Add SelectionBehaviorDown
- 486 Change ThreadSafety of from ReadOnly to ReadSafe
- 486 Change ThreadSafety of RootLocalizationTable from ReadOnly to ReadSafe
- 486 Change ThreadSafety of from ReadOnly to ReadSafe
- 486 Change ThreadSafety of from ReadOnly to ReadSafe
- 486 Change ThreadSafety of from ReadOnly to ReadSafe
- 486 Change ThreadSafety of from ReadOnly to ReadSafe
- 486 Change ThreadSafety of AutoLocalize from ReadOnly to ReadSafe
- 462 Change ThreadSafety of from to ReadOnly
- 462 Change ThreadSafety of RootLocalizationTable from to ReadOnly
- 462 Change ThreadSafety of from to ReadOnly
- 462 Change ThreadSafety of from to ReadOnly
- 462 Change ThreadSafety of from to ReadOnly
- 462 Change ThreadSafety of from to ReadOnly
- 462 Change ThreadSafety of AutoLocalize from to ReadOnly
- 462 Change ThreadSafety of AbsoluteSize from to Unsafe
- 462 Change ThreadSafety of AbsoluteRotation from to Unsafe
- 462 Change ThreadSafety of AbsolutePosition from to Unsafe
- 452 Add
- 452 Add
- 452 Add
- 452 Add
- 397 Change CanSave of AbsoluteRotation from true to false
- 335 Remove
- 333 Add
- 330 Change ValueType of RootLocalizationTable from Instance to LocalizationTable
- 329 Change ValueType of RootLocalizationTable from Object to Instance
- 328 Change Tags of RootLocalizationTable from [Hidden] to []
- 328 Change Tags of AutoLocalize from [Hidden] to []
- 326 Add RootLocalizationTable
- 326 Change Tags of from [Hidden, NotReplicated] to [Hidden, NotReplicated, Deprecated]
- 326 Add AutoLocalize
- 309 Add
- 293 Add AbsoluteRotation
- 85 Add AbsoluteSize
- 85 Add AbsolutePosition
- 85 Add GuiBase2d
Members 18
AbsolutePosition
| Type | Default | |
|---|---|---|
| Vector2 | ||
AbsolutePosition is a read-only property that provides the screen position of a GuiBase2d element in pixels. This represents the actual pixel position at which an element renders as a result of its ancestors' sizes and positions. Note that AbsolutePosition always represents the top-left corner of the GuiBase2d element.
If the GuiBase2d is in a ScreenGui, the AbsolutePosition property uses the CoreUISafeInsets viewport coordinate system. The origin of this coordinate system is located at the bottom-left corner of the Roblox top bar. Note that this is the same coordinate system used by the InputObject.Position property.

See also AbsoluteRotation and AbsoluteSize.
| Thread safety | Unsafe |
|---|---|
| Category | Data |
| Loaded/Saved | false |
History 3
- 553 Change Default of AbsolutePosition from to
- 462 Change ThreadSafety of AbsolutePosition from to Unsafe
- 85 Add AbsolutePosition
AbsoluteRotation
| Type | Default | |
|---|---|---|
| float | ||
AbsoluteRotation is a read-only
property that describes the actual screen rotation of a GuiBase2d
element, in degrees. It does not perform bounds checking, so its value
may not be in the range 0 to 360.
See also AbsolutePosition and AbsoluteSize.
| Thread safety | Unsafe |
|---|---|
| Category | Data |
| Loaded/Saved | false |
History 4
- 553 Change Default of AbsoluteRotation from to
- 462 Change ThreadSafety of AbsoluteRotation from to Unsafe
- 397 Change CanSave of AbsoluteRotation from true to false
- 293 Add AbsoluteRotation
AbsoluteSize
| Type | Default | |
|---|---|---|
| Vector2 | ||
AbsoluteSize is a read-only property that describes the actual screen size of a GuiBase2d element, in pixels.
See also AbsolutePosition and AbsoluteRotation.
| Thread safety | Unsafe |
|---|---|
| Category | Data |
| Loaded/Saved | false |
History 3
- 553 Change Default of AbsoluteSize from to
- 462 Change ThreadSafety of AbsoluteSize from to Unsafe
- 85 Add AbsoluteSize
AutoLocalize
| Type | Default | |
|---|---|---|
| bool | ||
When set to true, localization will be applied to this GuiBase2d
and its descendants. The entries used for localization are the same set of
entries returned by LocalizationService:GetTableEntries(). Entries
with AutoLocalize enabled are automatically
re-translated after the cloud table loads if necessary.
See also RootLocalizationTable.
| Thread safety | ReadSafe |
|---|---|
| Category | Localization |
| Loaded/Saved | true |
History 5
- 553 Change Default of AutoLocalize from to
- 486 Change ThreadSafety of AutoLocalize from ReadOnly to ReadSafe
- 462 Change ThreadSafety of AutoLocalize from to ReadOnly
- 328 Change Tags of AutoLocalize from [Hidden] to []
- 326 Add AutoLocalize
RootLocalizationTable
| Type | Default | |
|---|---|---|
| LocalizationTable | ||
A reference to a LocalizationTable to be used to apply automated
localization to this GuiBase2d and its descendants.
AutoLocalize must be set to true on the
GuiBase2d and its ancestors for automated localization to be
applied.
You can set this to reference a LocalizationTable anywhere in the DataModel. The GuiBase2d object and all of its children will try to use that specific LocalizationTable and its ancestors for automatic text replacement before using the tables under LocalizationService in an undefined order and the cloud table.
If there is no translation available in the referenced table, it will look for a translation in the parent of that table, if it is also a LocalizationTable, and so on.
See also LocalizationService:GetTableEntries() which explains how the RootLocalizationTable is used for automated localization.
| Thread safety | ReadSafe |
|---|---|
| Category | Localization |
| Loaded/Saved | true |
History 7
- 553 Change Default of RootLocalizationTable from to
- 486 Change ThreadSafety of RootLocalizationTable from ReadOnly to ReadSafe
- 462 Change ThreadSafety of RootLocalizationTable from to ReadOnly
- 330 Change ValueType of RootLocalizationTable from Instance to LocalizationTable
- 329 Change ValueType of RootLocalizationTable from Object to Instance
- 328 Change Tags of RootLocalizationTable from [Hidden] to []
- 326 Add RootLocalizationTable
SelectionBehaviorDown
| Type | Default | |
|---|---|---|
| SelectionBehavior | ||
SelectionBehaviorDown customizes
how gamepad selection moves in the down direction out of a selection
group. It only has an effect when
SelectionGroup is true;
SelectionGroup is false by default, and while it remains false this
property has no effect.
Its default value is SelectionBehavior.Escape, which prioritizes buttons within the selection group but allows the selection to move to a GuiObject outside the group in the down direction if no suitable button is found inside. Setting it to SelectionBehavior.Stop instead constrains the selection to the group, preventing it from moving downward out of the group.
See also SelectionGroup.
| Thread safety | ReadSafe |
|---|---|
| Category | Selection |
| Loaded/Saved | true |
History 8
- 553 Change Default of SelectionBehaviorDown from to
- 527 Change Tags of SelectionBehaviorDown from [NotBrowsable] to []
- 523 Change WriteSecurity of SelectionBehaviorDown from RobloxScriptSecurity to None
- 523 Change Tags of SelectionBehaviorDown from [Hidden, NotReplicated, NotBrowsable] to [NotBrowsable]
- 523 Change ReadSecurity of SelectionBehaviorDown from RobloxScriptSecurity to None
- 523 Change CanSave of SelectionBehaviorDown from false to true
- 523 Change CanLoad of SelectionBehaviorDown from false to true
- 522 Add SelectionBehaviorDown
SelectionBehaviorLeft
| Type | Default | |
|---|---|---|
| SelectionBehavior | ||
SelectionBehaviorLeft customizes
how gamepad selection moves in the left direction out of a selection
group. It only has an effect when
SelectionGroup is true;
SelectionGroup is false by default, and while it remains false this
property has no effect.
Its default value is SelectionBehavior.Escape, which prioritizes buttons within the selection group but allows the selection to move to a GuiObject outside the group in the left direction if no suitable button is found inside. Setting it to SelectionBehavior.Stop instead constrains the selection to the group, preventing it from moving leftward out of the group.
See also SelectionGroup.
| Thread safety | ReadSafe |
|---|---|
| Category | Selection |
| Loaded/Saved | true |
History 8
- 553 Change Default of SelectionBehaviorLeft from to
- 527 Change Tags of SelectionBehaviorLeft from [NotBrowsable] to []
- 523 Change WriteSecurity of SelectionBehaviorLeft from RobloxScriptSecurity to None
- 523 Change Tags of SelectionBehaviorLeft from [Hidden, NotReplicated, NotBrowsable] to [NotBrowsable]
- 523 Change ReadSecurity of SelectionBehaviorLeft from RobloxScriptSecurity to None
- 523 Change CanSave of SelectionBehaviorLeft from false to true
- 523 Change CanLoad of SelectionBehaviorLeft from false to true
- 522 Add SelectionBehaviorLeft
SelectionBehaviorRight
| Type | Default | |
|---|---|---|
| SelectionBehavior | ||
SelectionBehaviorRight customizes
how gamepad selection moves in the right direction out of a selection
group. It only has an effect when
SelectionGroup is true;
SelectionGroup is false by default, and while it remains false this
property has no effect.
Its default value is SelectionBehavior.Escape, which prioritizes buttons within the selection group but allows the selection to move to a GuiObject outside the group in the right direction if no suitable button is found inside. Setting it to SelectionBehavior.Stop instead constrains the selection to the group, preventing it from moving rightward out of the group.
See also SelectionGroup.
| Thread safety | ReadSafe |
|---|---|
| Category | Selection |
| Loaded/Saved | true |
History 8
- 553 Change Default of SelectionBehaviorRight from to
- 527 Change Tags of SelectionBehaviorRight from [NotBrowsable] to []
- 523 Change WriteSecurity of SelectionBehaviorRight from RobloxScriptSecurity to None
- 523 Change Tags of SelectionBehaviorRight from [Hidden, NotReplicated, NotBrowsable] to [NotBrowsable]
- 523 Change ReadSecurity of SelectionBehaviorRight from RobloxScriptSecurity to None
- 523 Change CanSave of SelectionBehaviorRight from false to true
- 523 Change CanLoad of SelectionBehaviorRight from false to true
- 522 Add SelectionBehaviorRight
SelectionBehaviorUp
| Type | Default | |
|---|---|---|
| SelectionBehavior | ||
SelectionBehaviorUp customizes how
gamepad selection moves in the up direction out of a selection group. It
only has an effect when SelectionGroup is
true; SelectionGroup is false by default, and while it remains
false this property has no effect.
Its default value is SelectionBehavior.Escape, which prioritizes buttons within the selection group but allows the selection to move to a GuiObject outside the group in the up direction if no suitable button is found inside. Setting it to SelectionBehavior.Stop instead constrains the selection to the group, preventing it from moving upward out of the group.
See also SelectionGroup.
| Thread safety | ReadSafe |
|---|---|
| Category | Selection |
| Loaded/Saved | true |
History 8
- 553 Change Default of SelectionBehaviorUp from to
- 527 Change Tags of SelectionBehaviorUp from [NotBrowsable] to []
- 523 Change WriteSecurity of SelectionBehaviorUp from RobloxScriptSecurity to None
- 523 Change Tags of SelectionBehaviorUp from [Hidden, NotReplicated, NotBrowsable] to [NotBrowsable]
- 523 Change ReadSecurity of SelectionBehaviorUp from RobloxScriptSecurity to None
- 523 Change CanSave of SelectionBehaviorUp from false to true
- 523 Change CanLoad of SelectionBehaviorUp from false to true
- 522 Add SelectionBehaviorUp
SelectionChanged
| Parameters (3) | |
|---|---|
| amISelected | bool |
| previousSelection | GuiObject |
| newSelection | GuiObject |
This event fires when the gamepad selection moves to, leaves, or changes within the connected GuiBase2d or any descendant GuiObjects. When the selection highlight moves to a GuiObject, the event bubbles from that GuiObject to all of its ancestors, informing them that the selection has changed/entered/exited to a GuiObject in their descendant tree.
| Thread safety | Unsafe |
|---|
History 1
- 525 Add SelectionChanged
SelectionGroup
| Type | Default | |
|---|---|---|
| bool | ||
Allows for customization of how gamepad selection can move between buttons, which are descendants of the selection group, leave the group, and select other buttons.
Setting SelectionGroup to true exposes
the SelectionBehaviorUp,
SelectionBehaviorDown,
SelectionBehaviorLeft, and
SelectionBehaviorRight
properties. For these selection behaviors, a setting of
SelectionBehavior.Escape (default) means the gamepad selection
tries to first find a selection within the selection group and only moves
outside if it does not find a suitable button. Alternatively, a setting of
SelectionBehavior.Stop means gamepad selection only looks within
the selection group and does not move outside of the group from the
selection behavior direction.
| Thread safety | ReadSafe |
|---|---|
| Category | Selection |
| Loaded/Saved | true |
History 8
- 553 Change Default of SelectionGroup from to
- 527 Change Tags of SelectionGroup from [NotBrowsable] to []
- 523 Change WriteSecurity of SelectionGroup from RobloxScriptSecurity to None
- 523 Change Tags of SelectionGroup from [Hidden, NotReplicated, NotBrowsable] to [NotBrowsable]
- 523 Change ReadSecurity of SelectionGroup from RobloxScriptSecurity to None
- 523 Change CanSave of SelectionGroup from false to true
- 523 Change CanLoad of SelectionGroup from false to true
- 522 Add SelectionGroup