Classe de moteur
ImageButton
*Ce contenu est traduit en utilisant l'IA (Beta) et peut contenir des erreurs. Pour consulter cette page en anglais, clique ici.
Résumé
Propriétés
HoverImage:ContentId |
Image:ContentId |
PressedImage:ContentId |
Référence API
Propriétés
HoverImage
ImageButton.HoverImage:ContentId
Image
ImageButton.Image:ContentId
Échantillons de code
Verrouillage d'image au survol
local imageLabel = script.Parent
-- Les images dans cet exemple sont 64x64
imageLabel.Size = UDim2.new(0, 64, 0, 64)
local function unlock()
imageLabel.Image = "rbxassetid://284402785" -- Cadenas déverrouillé (64x64)
imageLabel.ImageColor3 = Color3.new(0, 0.5, 0) -- Vert foncé
end
local function lock()
imageLabel.Image = "rbxassetid://284402752" -- Cadenas verrouillé (64x64)
imageLabel.ImageColor3 = Color3.new(0.5, 0, 0) -- Rouge foncé
end
-- Connecter les événements ; notre état par défaut est verrouillé
imageLabel.MouseEnter:Connect(unlock)
imageLabel.MouseLeave:Connect(lock)
lock()ImageColor3
Échantillons de code
Verrouillage d'image au survol
local imageLabel = script.Parent
-- Les images dans cet exemple sont 64x64
imageLabel.Size = UDim2.new(0, 64, 0, 64)
local function unlock()
imageLabel.Image = "rbxassetid://284402785" -- Cadenas déverrouillé (64x64)
imageLabel.ImageColor3 = Color3.new(0, 0.5, 0) -- Vert foncé
end
local function lock()
imageLabel.Image = "rbxassetid://284402752" -- Cadenas verrouillé (64x64)
imageLabel.ImageColor3 = Color3.new(0.5, 0, 0) -- Rouge foncé
end
-- Connecter les événements ; notre état par défaut est verrouillé
imageLabel.MouseEnter:Connect(unlock)
imageLabel.MouseLeave:Connect(lock)
lock()ImageRectOffset
Échantillons de code
Animation d'Image utilisant un Spritesheet
-- Placez ceci dans un ImageLabel/ImageButton avec une taille de 256x256
local imageLabel = script.Parent
-- L'image suivante fait 1024x1024 avec 12 images (256x256)
-- Les images jouent une animation d'un homme donnant un coup de poing
imageLabel.Image = "rbxassetid://848623155"
imageLabel.ImageRectSize = Vector2.new(256, 256)
-- L'ordre des images à afficher (de gauche à droite, puis de haut en bas)
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),
}
-- Animer les images une par une dans une boucle
while true do
for _, frame in ipairs(frames) do
imageLabel.ImageRectOffset = frame * imageLabel.ImageRectSize
task.wait(0.1)
end
endImageRectSize
Échantillons de code
Animation d'Image utilisant un Spritesheet
-- Placez ceci dans un ImageLabel/ImageButton avec une taille de 256x256
local imageLabel = script.Parent
-- L'image suivante fait 1024x1024 avec 12 images (256x256)
-- Les images jouent une animation d'un homme donnant un coup de poing
imageLabel.Image = "rbxassetid://848623155"
imageLabel.ImageRectSize = Vector2.new(256, 256)
-- L'ordre des images à afficher (de gauche à droite, puis de haut en bas)
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),
}
-- Animer les images une par une dans une boucle
while true do
for _, frame in ipairs(frames) do
imageLabel.ImageRectOffset = frame * imageLabel.ImageRectSize
task.wait(0.1)
end
endIsLoaded
Échantillons de code
Temps de chargement de l'image
local imageLabel = script.Parent
local startTime = workspace.DistributedGameTime
-- Attendre que l'image se charge
while not imageLabel.IsLoaded do
task.wait()
end
-- Mesurer et afficher combien de temps il a fallu pour charger
local deltaTime = workspace.DistributedGameTime - startTime
print(("Image chargée en %.3f secondes"):format(deltaTime))PressedImage
ImageButton.PressedImage:ContentId