GuiBase2d

Mostrar obsoleto

*Este conteúdo é traduzido por IA (Beta) e pode conter erros. Para ver a página em inglês, clique aqui.

Não criável
Não navegável

GuiBase2d é uma classe abstrata que herda Objetos GUI 2D.

Resumo

Propriedades

Eventos

Propriedades

AbsolutePosition

Somente leitura
Não replicado

O AbsolutePosition é uma propriedade de leitura que fornece a posição de tela de um elemento da interface do usuário em pixels. Isso representa a posição de píxeles atual do elemento em um resultado de suas dimensões e posições de ancestrais. O GuiObject.AnchorPoint também influencia o AbsolutePosition. Essa propriedade,

Por exemplo, em uma tela de 1920 x 1080, um Frame com posição 0.5, 0, 0.5, 0 teria uma posição Absoluta de (960, 540). Se você colocasse outro Frame com posição

Amostras de código

This code sample shows how a UI element's size, position and rotation can be copied without parenting a "copycat" to the original. It uses the Absolute-family of properties to orient a "copycat" Frame that covers on the screen space that the original does.

Copycat Frame

-- Place within a Frame, TextLabel, etc.
local guiObject = script.Parent
-- For this object to be rendered, it must be a descendant of a ScreenGui
local screenGui = guiObject:FindFirstAncestorOfClass("ScreenGui")
-- Create a copy
local copycat = Instance.new("Frame")
copycat.BackgroundTransparency = 0.5
copycat.BackgroundColor3 = Color3.new(0.5, 0.5, 1) -- Light blue
copycat.BorderColor3 = Color3.new(1, 1, 1) -- White
-- Orient the copy just as the original; do so "absolutely"
copycat.AnchorPoint = Vector2.new(0, 0)
copycat.Position = UDim2.new(0, guiObject.AbsolutePosition.X, 0, guiObject.AbsolutePosition.Y)
copycat.Size = UDim2.new(0, guiObject.AbsoluteSize.X, 0, guiObject.AbsoluteSize.Y)
copycat.Rotation = guiObject.AbsoluteRotation
-- Insert into ancestor ScreenGui
copycat.Parent = screenGui

AbsoluteRotation

Somente leitura
Não replicado

A propriedade AbsoluteRotation é uma propriedade de leitura que descreve a rotação de tela real de um elemento de UI, em graus. Essa propriedade, GuiBase2d.AbsoluteSize e Class.GuiBase2d.AbsolutePosition</

Por exemplo, se FrameA tiver uma rotação de 40 graus, e FrameB dentro dele tiver um GuiObject.Rotation de 50 graus, então a AbsoluteRotation de FrameB seria de 90 graus.

Amostras de código

This code sample shows how a UI element's size, position and rotation can be copied without parenting a "copycat" to the original. It uses the Absolute-family of properties to orient a "copycat" Frame that covers on the screen space that the original does.

Copycat Frame

-- Place within a Frame, TextLabel, etc.
local guiObject = script.Parent
-- For this object to be rendered, it must be a descendant of a ScreenGui
local screenGui = guiObject:FindFirstAncestorOfClass("ScreenGui")
-- Create a copy
local copycat = Instance.new("Frame")
copycat.BackgroundTransparency = 0.5
copycat.BackgroundColor3 = Color3.new(0.5, 0.5, 1) -- Light blue
copycat.BorderColor3 = Color3.new(1, 1, 1) -- White
-- Orient the copy just as the original; do so "absolutely"
copycat.AnchorPoint = Vector2.new(0, 0)
copycat.Position = UDim2.new(0, guiObject.AbsolutePosition.X, 0, guiObject.AbsolutePosition.Y)
copycat.Size = UDim2.new(0, guiObject.AbsoluteSize.X, 0, guiObject.AbsoluteSize.Y)
copycat.Rotation = guiObject.AbsoluteRotation
-- Insert into ancestor ScreenGui
copycat.Parent = screenGui

AbsoluteSize

Somente leitura
Não replicado

O tamanho da tela de um elemento da interface do usuário é uma propriedade de leitura apenas que fornece o tamanho da tela de um elemento da interface do usuário em pixels. Isso representa o tamanho real do pixel no qual um elemento é renderizado como resultado do tamanho de seus ancestrais. Essa propriedade, GuiBase2d.AbsolutePosition e GuiBase2d.AbsoluteRotation são um grupo de propriedades que des

Por exemplo, em uma tela de 1920 por 1080, se FrameA existir dentro de FrameB, e eles ambos têm um tamanho de .5, 0,

Amostras de código

This code sample shows how a UI element's size, position and rotation can be copied without parenting a "copycat" to the original. It uses the Absolute-family of properties to orient a "copycat" Frame that covers on the screen space that the original does.

Copycat Frame

-- Place within a Frame, TextLabel, etc.
local guiObject = script.Parent
-- For this object to be rendered, it must be a descendant of a ScreenGui
local screenGui = guiObject:FindFirstAncestorOfClass("ScreenGui")
-- Create a copy
local copycat = Instance.new("Frame")
copycat.BackgroundTransparency = 0.5
copycat.BackgroundColor3 = Color3.new(0.5, 0.5, 1) -- Light blue
copycat.BorderColor3 = Color3.new(1, 1, 1) -- White
-- Orient the copy just as the original; do so "absolutely"
copycat.AnchorPoint = Vector2.new(0, 0)
copycat.Position = UDim2.new(0, guiObject.AbsolutePosition.X, 0, guiObject.AbsolutePosition.Y)
copycat.Size = UDim2.new(0, guiObject.AbsoluteSize.X, 0, guiObject.AbsoluteSize.Y)
copycat.Rotation = guiObject.AbsoluteRotation
-- Insert into ancestor ScreenGui
copycat.Parent = screenGui

AutoLocalize

Ler Parallel

Quando definido como verdadeiro, a localização será aplicada a este GuiBase2d e seus descendentes. As entradas usadas para a localização são as mesmas entradas usadas para a localização, são automaticamente re-traduzidas após a carregar na nuvem se necessário.

Veja também GuiBase2d.RootLocalizationTable .

RootLocalizationTable

Ler Parallel

Uma referência a um LocalizationTable para ser usado para aplicar localização automatizada a este GuiBase2d e seus descendentes.

A propriedade GuiBase2d.AutoLocalize deve ser definida como verdadeira neste Objetoe em seus ancestrais para que a localização automática seja aplicada. Você pode definir isso como referência a uma Tabela de Local

Se não houver tradução disponível na tabela referenciada, ele procurará por uma tradução no pai dessa tabela, se for também um LocalizationTable, e assim por diante.

Veja também LocalizationService:GetTableEntries() , que explica como o GuiBase2d.RootLocalizationTable é usado para localização automatizada.

SelectionBehaviorDown

Ler Parallel

Personaliza o comportamento de seleção do gamepad na direção de baixo.

SelectionBehaviorLeft

Ler Parallel

Personaliza o comportamento de seleção do gamepad na direção esquerda.

SelectionBehaviorRight

Ler Parallel

Personaliza o comportamento de seleção do gamepad na direção certa.

SelectionBehaviorUp

Ler Parallel

Personaliza o comportamento de seleção do gamepad na direção de cima.

SelectionGroup

Ler Parallel

Ativar o Grupo de Seleção para uma GUI permite que você personalize como a seleção do gamepad pode se mover entre botões, que são descendentes do Grupo de Seleção, sai do grupo e seleciona outros botões.

Métodos

Eventos

SelectionChanged

Este evento ocorre quando a seleção muda dentro de qualquer descendente do GuiBase2d conectado. Quando a seleção é movida para um GuiObject, as bolhas de evento são geradas a partir desse GuiObject para todos os seus ancestrais, informando-os que a seleção foi alterada/inserida/saltada para um GuiObject em sua árvore de ancestrais.

Parâmetros

amISelected: bool

Verdadeiro se a nova seleção corresponder à GuiBase2d anexada.

previousSelection: GuiObject
newSelection: GuiObject

Amostras de código

This example shows how to use GuiBase2d.SelectionChanged to set the color of a background frame depending on if the gamepad selection has a child GuiObject focused in a hierarchy that looks like this:

You can add code to change the background color of backgroundWindow to green when buttons 1, 2 or 3 are selected and change to red when other buttons outside the frame are selected. This helps you to add any new buttons to the backgroundWindow without updating the code.

SelectionChanged Background Color

local backgroundWindow = script.Parent.BackgroundWindow
local function selectionChanged(isSelfSelected, previousSelection, newSelection)
if newSelection and newSelection:IsDescendantOf(backgroundWindow) then
backgroundWindow.BackgroundColor3 = Color3.new(0, 1, 0)
else
backgroundWindow.BackgroundColor3 = Color3.new(1, 0, 0)
end
end
backgroundWindow.SelectionChanged:Connect(selectionChanged)