ImageButton
*Este conteúdo é traduzido por IA (Beta) e pode conter erros. Para ver a página em inglês, clique aqui.
Um ImageButton se comporta de forma semelhante a um ImageLabel em relação ao renderizamento, com os comportamentos adicionais de um GuiButton.
Resumo
Propriedades
Um ID de textura que será usado quando o ImageButton estiver sendo movido.
O conteúdo de imagem exibido pelo elemento ImageButton. Lê e escreve em ImageContent.
Determina como uma imagem renderizada será colorizada.
O conteúdo de imagem exibido pelo elemento da interface do usuário. Suporta URI de recursos e objetos EditableImage .
O deslocamento em pixels da subárea de uma imagem a ser exibida.
Determina o tamanho em pixels da subárea de uma imagem a ser exibida.
Determina a transparência da imagem renderizada.
Indica se a imagem terminou de carregar do site do Roblox.
Um ID de textura que será usado quando um ImageButton for pressionado.
Seleciona o modo de resampling de imagem para o botão.
Determina como uma imagem será escalada se exibida em um elemento de UI cujo tamanho difere da imagem de origem.
Define os limites de uma fatia de uma imagem de 9 fatias.
Escala as bordas de 9 fatias pela taxa especificada.
Define a escala de colocação do Botão de Imagem.
Determina se o botão muda automaticamente de cor quando o mouse passa por cima ou clica nele.
Uma instância HapticEffect que tocará quando o GuiButton estiver sendo movido.
Se true enquanto o elemento GUI está visível, o mouse não será bloqueado a menos que o botão direito do mouse esteja pressionado.
Uma instância HapticEffect que será reproduzida quando o GuiButton for pressionado.
Uma propriedade booleana que indica se o objeto foi selecionado.
Define o estilo do GuiButton com base em uma lista de estilos predefinidos.
Determina se este elemento de UI afunda a entrada.
Determina o ponto de origem de um GuiObject , em relação ao seu tamanho absoluto.
Determina se o redimensionamento ocorre com base no conteúdo da criança.
Determina a cor de fundo GuiObject .
Determina a transparência do plano de fundo e da borda GuiObject.
Determina a cor da borda GuiObject .
Determina de que maneira a borda GuiObject é disposta em relação às suas dimensões.
Determina a largura do pixel da borda GuiObject .
Determina se descendente GuiObjects fora dos limites de um elemento GUI pai deve renderizar.
Determina se o mouse do jogador está sendo pressionado ativamente no GuiObject ou não.
Determina se o GuiButton pode ser interagido ou não, ou se o GuiState do GuiObject está mudando ou não.
Controla a ordem de classificação do GuiObject quando usado com um UIGridStyleLayout .
Define o GuiObject que será selecionado quando o seletor de gamepad for movido para baixo.
Define o GuiObject que será selecionado quando o seletor de gamepad for movido para a esquerda.
Define o GuiObject que será selecionado quando o seletor de gamepad for movido para a direita.
Define o GuiObject que será selecionado quando o seletor de gamepad for movido para cima.
Determina a posição do pixel e escalar da GuiObject .
Determina o número de graus em que o GuiObject é girado.
Determine se o GuiObject pode ser selecionado por um controle / controle de jogo.
Substitui o adorno de seleção padrão usado para gamepads.
A ordem de GuiObjects selecionada pela seleção da interface do gamepad.
Determina o tamanho do pixel e escalar do GuiObject .
Define os eixos Size que o GuiObject será baseado, em relação ao tamanho de seu pai.
Uma propriedade mista de BackgroundTransparency e TextTransparency.
Determina se o GuiObject e seus descendentes serão renderizados.
Determina a ordem em que um GuiObject renderiza em relação aos outros.
Descreve a posição real da tela de um elemento GuiBase2d , em pixels.
Descreve a rotação real da tela de um elemento GuiBase2d em graus.
Descreve o tamanho real da tela de um elemento GuiBase2d , em pixels.
Quando definido para true , a localização será aplicada a este GuiBase2d e 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 de 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 a personalização do movimento de seleção do gamepad.
Métodos
Métodos herdados de GuiObject- TweenPosition(endPosition : UDim2,easingDirection : Enum.EasingDirection,easingStyle : Enum.EasingStyle,time : number,override : boolean,callback : function):boolean
Mova suavemente uma GUI para um novo UDim2.
- TweenSize(endSize : UDim2,easingDirection : Enum.EasingDirection,easingStyle : Enum.EasingStyle,time : number,override : boolean,callback : function):boolean
- TweenSizeAndPosition(endSize : UDim2,endPosition : UDim2,easingDirection : Enum.EasingDirection,easingStyle : Enum.EasingStyle,time : number,override : boolean,callback : function):boolean
Mova suavemente uma GUI para um novo tamanho e posição.
Eventos
Eventos herdados de GuiButtonDispara quando o botão é ativado.
Incêndios quando o mouse do usuário clica totalmente no GuiButton .
Incêndios quando o usuário pressiona o botão esquerdo do mouse para baixo no GuiButton.
Incêndios quando o usuário solta seu botão esquerdo do mouse fora do GuiButton.
Incêndios quando o mouse do usuário clica totalmente com o botão direito no GuiButton .
Dispara quando o usuário pressiona o botão direito do mouse para baixo no GuiButton.
Incêndios quando o usuário solta o botão direito do mouse fora do GuiButton.
Dispedido quando um usuário começa a interagir através de um dispositivo de Interface Humano-Computador (botão do mouse para baixo, toque começa, botão do teclado para baixo, etc).
Dispedido quando um usuário muda como está interagindo através de um dispositivo de Interface Humano-Computador (botão do mouse para baixo, toque começa, botão da tecla para baixo, etc).
Dispedido quando um usuário para de interagir através de um dispositivo de Interface Humano-Computador (botão do mouse para baixo, toque começar, botão da tecla para baixo, etc).
Dispara quando um usuário move o mouse para um elemento de GUI.
Dispara quando um usuário move o mouse para fora de um elemento de GUI.
Incêndios sempre que um usuário move o mouse enquanto ele está dentro de um elemento de GUI.
Dispara quando um usuário rola a roda do mouse de volta quando o mouse está sobre um elemento de GUI.
Dispara quando um usuário rola a roda do mouse para a frente quando o mouse está sobre um elemento de GUI.
Disparado quando o GuiObject está sendo focado no seletor Gamepad.
Dispedido quando o seletor de Gamepad para de se concentrar no GuiObject.
Incêndios quando o jogador começa, continua e para de apertar a tecla da interface de usuário por muito tempo.
- TouchPan(touchPositions : Array,totalTranslation : Vector2,velocity : Vector2,state : Enum.UserInputState):RBXScriptSignal
Dispara quando o jogador move o dedo sobre o elemento da interface.
- TouchPinch(touchPositions : Array,scale : number,velocity : number,state : Enum.UserInputState):RBXScriptSignal
Incêndios quando o jogador executa um gesto de pinça ou puxão usando dois dedos no elemento da interface.
- TouchRotate(touchPositions : Array,rotation : number,velocity : number,state : Enum.UserInputState):RBXScriptSignal
Incêndios quando o jogador executa um gesto de rotação usando dois dedos no elemento da interface.
Incêndios quando o jogador executa um gesto de deslize no elemento da interface.
Dispara quando o jogador executa um gesto de toque no elemento da interface.
- SelectionChanged(amISelected : boolean,previousSelection : GuiObject,newSelection : GuiObject):RBXScriptSignal
Incêndios quando a seleção do gamepad se move para, deixa ou muda dentro do conectado GuiBase2d ou qualquer descendente GuiObjects.
Propriedades
HoverImageContent
Image
Esta propriedade é uma propriedade do tipo conteúdo que deve conter o ID do recurso de um decal ou imagem carregado no Roblox.Ela funciona de forma idêntica a Decal.Texture com relação ao carregamento da imagem do Roblox.A imagem renderizada será colorizada usando ImageColor3 .
Observe que é possível fazer com que a imagem seja renderizada como azulejo, dimensionada para caber ou 9-dividida ao ajustar a propriedade ScaleType.
Amostras de código
This code sample causes an ImageLabel/ImageButton to display a red padlock. When the mouse is hovered, it changes to a green unlocked padlock.
local imageLabel = script.Parent
-- The images in this example are 64x64
imageLabel.Size = UDim2.new(0, 64, 0, 64)
local function unlock()
imageLabel.Image = "rbxassetid://284402785" -- Unlocked padlock (64x64)
imageLabel.ImageColor3 = Color3.new(0, 0.5, 0) -- Dark green
end
local function lock()
imageLabel.Image = "rbxassetid://284402752" -- Locked padlock (64x64)
imageLabel.ImageColor3 = Color3.new(0.5, 0, 0) -- Dark red
end
-- Connect events; our default state is locked
imageLabel.MouseEnter:Connect(unlock)
imageLabel.MouseLeave:Connect(lock)
lock()
ImageColor3
Essa propriedade determina como uma imagem é colorizada.Quando definido para branco, nenhuma colorização ocorre.Essa propriedade é muito útil para reutilizar recursos de imagem: Se a imagem de origem for completamente branca com transparência, você pode definir toda a cor da imagem de uma só vez com essa propriedade.
Amostras de código
This code sample causes an ImageLabel/ImageButton to display a red padlock. When the mouse is hovered, it changes to a green unlocked padlock.
local imageLabel = script.Parent
-- The images in this example are 64x64
imageLabel.Size = UDim2.new(0, 64, 0, 64)
local function unlock()
imageLabel.Image = "rbxassetid://284402785" -- Unlocked padlock (64x64)
imageLabel.ImageColor3 = Color3.new(0, 0.5, 0) -- Dark green
end
local function lock()
imageLabel.Image = "rbxassetid://284402752" -- Locked padlock (64x64)
imageLabel.ImageColor3 = Color3.new(0.5, 0, 0) -- Dark red
end
-- Connect events; our default state is locked
imageLabel.MouseEnter:Connect(unlock)
imageLabel.MouseLeave:Connect(lock)
lock()
ImageContent
Essa propriedade deve conter um URI de recurso ou uma referência a um ObjetoEditableImage.O URI de recurso pode referenciar um decalque ou imagem carregada no Roblox.Ela funciona de forma idêntica a Decal.Texture com relação ao carregamento da imagem.
A imagem renderizada será colorizada usando ImageColor3 .É possível fazer com que a imagem seja renderizada como azulejada, escalonada para caber ou 9‑dividida ao ajustar a propriedade ScaleType.
ImageRectOffset
Essa propriedade determina o deslocamento de pixels (a partir da esquerda superior) da área de imagem a ser exibida, permitindo o exibição parcial de uma imagem em conjunto com ImageRectSize.
Amostras de código
This code sample uses ImageRectOffset/ImageRectSize in order to play an animation of a man throwing a punch
-- Place this in an ImageLabel/ImageButton with size 256x256
local imageLabel = script.Parent
-- The following image is 1024x1024 with 12 frames (256x256)
-- The frames play an animation of a man throwing a punch
imageLabel.Image = "rbxassetid://848623155"
imageLabel.ImageRectSize = Vector2.new(256, 256)
-- The order of the frames to be displayed (left-to-right, then top-to-bottom)
local frames = {
Vector2.new(0, 0),
Vector2.new(1, 0),
Vector2.new(2, 0),
Vector2.new(3, 0),
Vector2.new(0, 1),
Vector2.new(1, 1),
Vector2.new(2, 1),
Vector2.new(3, 1),
Vector2.new(0, 2),
Vector2.new(1, 2),
Vector2.new(2, 2),
Vector2.new(3, 2),
}
-- Animate the frames one at a time in a loop
while true do
for _, frame in ipairs(frames) do
imageLabel.ImageRectOffset = frame * imageLabel.ImageRectSize
task.wait(0.1)
end
end
ImageRectSize
Essa propriedade determina o tamanho do pixel da área de imagem a ser exibida, permitindo a exibição parcial de uma imagem em conjunto com ImageRectOffset.Se alguma dimensão for definida como 0, a imagem inteira será exibida em vez disso.
Amostras de código
This code sample uses ImageRectOffset/ImageRectSize in order to play an animation of a man throwing a punch
-- Place this in an ImageLabel/ImageButton with size 256x256
local imageLabel = script.Parent
-- The following image is 1024x1024 with 12 frames (256x256)
-- The frames play an animation of a man throwing a punch
imageLabel.Image = "rbxassetid://848623155"
imageLabel.ImageRectSize = Vector2.new(256, 256)
-- The order of the frames to be displayed (left-to-right, then top-to-bottom)
local frames = {
Vector2.new(0, 0),
Vector2.new(1, 0),
Vector2.new(2, 0),
Vector2.new(3, 0),
Vector2.new(0, 1),
Vector2.new(1, 1),
Vector2.new(2, 1),
Vector2.new(3, 1),
Vector2.new(0, 2),
Vector2.new(1, 2),
Vector2.new(2, 2),
Vector2.new(3, 2),
}
-- Animate the frames one at a time in a loop
while true do
for _, frame in ipairs(frames) do
imageLabel.ImageRectOffset = frame * imageLabel.ImageRectSize
task.wait(0.1)
end
end
ImageTransparency
Essa propriedade determina o alfa da imagem renderizada do elemento.Um valor de 0 é completamente opaco e um valor de 1 é completamente transparente (invisível).Essa propriedade se comporta de forma semelhante a GuiObject.BackgroundTransparency ou BasePart.Transparency.
Se você desabilitar a renderização de imagem definindo ImageTransparency para 1, resultará em um retângulo simples que pode ser usado como botão.No entanto, pode ser melhor usar um vazio TextButton em vez disso.
IsLoaded
Essa propriedade indica se a propriedade Image terminou de carregar do Roblox. Imagens rejeitadas pela moderação nunca serão carregadas.
Amostras de código
This code sample measures how long an ImageLabel or ImageButton takes to load an image. If the image was already loaded, this will be 0.
local imageLabel = script.Parent
local startTime = workspace.DistributedGameTime
-- Wait for the image to load
while not imageLabel.IsLoaded do
task.wait()
end
-- Measure and display how long it took to load
local deltaTime = workspace.DistributedGameTime - startTime
print(("Image loaded in %.3f seconds"):format(deltaTime))
PressedImage
Um ID de textura que pode ser definido como uma propriedade ImageButton. Quando o botão for pressionado, ele renderizará essa imagem.
PressedImageContent
ResampleMode
Determina como a imagem aparece quando é escalada.Por padrão, a imagem suaviza a textura quando exibida maior ou menor que seu tamanho na memória de textura.Em contraste, Enum.ResamplerMode.Pixelated preserva as bordas afiadas dos pixels de imagem.
ScaleType
Essa propriedade determina de que maneira a propriedade Image é renderizada quando o tamanho absoluto do elemento da interface difere do tamanho da imagem de origem.
Por padrão, esta propriedade é Enum.ScaleType.Stretch a qual simplesmente estenderá/compactará as dimensões da imagem para que ela se encaixe exatamente no espaço do elemento da interface.Como pixels transparentes são definidos como pretos ao fazer o upload para o Roblox, imagens transparentes devem aplicar fusão alfa para evitar um contorno negro em torno de imagens escalonadas.
Para Enum.ScaleType.Slice , ao aumentar a escala, os cantos permanecerão como o tamanho da imagem de origem.Os cantos da imagem se estenderão para a largura/altura da imagem.Finalmente, o centro da imagem se estenderá para preencher a área central da imagem.Para aprender mais sobre imagens de 9 fatias, veja Design da Interface de Usuário de 9 Fatias.
Para Enum.ScaleType.Tile , o tamanho de cada mosaico de imagem é determinado pela propriedade TileSize.
SliceCenter
Essa propriedade define os limites de corte de uma imagem de 9 fatias quando é definido como .
Para aprender mais sobre imagens de 9 fatias, veja Design da Interface de Usuário de 9 Fatias.
SliceScale
Escala as bordas de 9 fatias pela taxa especificada.Isso significa que as bordas ao redor do 9‑slice crescerão como se você tivesse carregado uma nova versão da textura upscaled.Padrão para 1.0 .
Como multiplicador para as bordas de um 9-slice, é útil reutilizar uma imagem de canto arredondado para vários raios.
Veja também ScaleType que determina como uma imagem será escalada se exibida em um elemento de UI cujo tamanho difere da imagem de origem.
TileSize
Define o tamanho do mosaico da ImageButton iniciando no canto superior esquerdo da imagem.Os valores padrão UDim2 são
Essa propriedade só está ativa se a propriedade ScaleType estiver definida como Enum.ScaleType.Tile.