GuiBase2d
*Este conteúdo é traduzido por IA (Beta) e pode conter erros. Para ver a página em inglês, clique aqui.
GuiBase2d é uma classe abstrata que herda Objetos GUI 2D.
Resumo
Propriedades
Descreve a posição real da tela de um elemento da interface, em pixels.
Descreve a rotação de tela real de um elemento da interface, em graus.
Descreve o tamanho real da tela de um elemento da interface, em pixels.
Quando definido como verdadeiro, a localização será aplicada a este GuiBase2d e aos seus descendentes.
Uma referência a um LocalizationTable para ser usado para aplicar localização automatizada a este GuiBase2d e seus descendentes.
Personaliza o comportamento de seleção do gamepad na direção de baixo.
Personaliza o comportamento de seleção do gamepad na direção esquerda.
Personaliza o comportamento de seleção do gamepad na direção certa.
Personaliza o comportamento de seleção do gamepad na direção de cima.
Permite personalizar o movimento da almofada de jogo.
Eventos
- SelectionChanged(amISelected : bool,previousSelection : GuiObject,newSelection : GuiObject):RBXScriptSignal
Ativado quando a seleção do gamepad se move para, sai ou muda dentro da GuiBase2d conectada ou de qualquer descendente GuiObjects.
Propriedades
AbsolutePosition
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.
-- 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
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.
-- 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
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.
-- 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
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
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
Personaliza o comportamento de seleção do gamepad na direção de baixo.
SelectionBehaviorLeft
Personaliza o comportamento de seleção do gamepad na direção esquerda.
SelectionBehaviorRight
Personaliza o comportamento de seleção do gamepad na direção certa.
SelectionBehaviorUp
Personaliza o comportamento de seleção do gamepad na direção de cima.
SelectionGroup
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
Verdadeiro se a nova seleção corresponder à GuiBase2d anexada.
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.
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)