ImageButton
*Dieser Inhalt wurde mit KI (Beta) übersetzt und kann Fehler enthalten. Um diese Seite auf Englisch zu sehen, klicke hier.
Ein ImageButton verhält sich ähnlich wie ein ImageLabel in Bezug auf die Rendering mit den zusätzlichen Verhaltensweisen eines GuiButton . Es definiert die gleichen Bild-Renderndereigenschaften wie ein ImageLabel .
Du kannst die Bild rendernd durch Setzen von ImageButton.ImageTransparency auf 1 deaktivieren. Dies wird ein einfaches Rechteck erzeugen, das als Button verwendet werden kann. jedoch, es ist möglicherweise besser, ein leeres TextButton für dies zu verwenden.
Code-Beispiele
-- Place this code in a LocalScript in an ImageButton
local imageButton = script.Parent
local colorNormal = Color3.new(1, 1, 1) -- white
local colorHover = Color3.new(0, 1, 0) -- green
local colorPress = Color3.new(1, 0, 0) -- red
-- This is a 32x32 image of a backpack
imageButton.Image = "rbxassetid://787458668"
imageButton.BackgroundTransparency = 1
local function onActivated()
print("open the inventory")
end
local function onPressed()
imageButton.ImageColor3 = colorPress
end
local function onReleased()
imageButton.ImageColor3 = colorHover
end
local function onEntered()
imageButton.ImageColor3 = colorHover
end
local function onLeft()
imageButton.ImageColor3 = colorNormal
end
imageButton.MouseEnter:Connect(onEntered)
imageButton.MouseLeave:Connect(onLeft)
imageButton.MouseButton1Down:Connect(onPressed)
imageButton.MouseButton1Up:Connect(onReleased)
imageButton.Activated:Connect(onActivated)
-- Start with the default, non-hovered state
onLeft()
Zusammenfassung
Eigenschaften
Eine Textur-ID, die verwendet wird, wenn der ImageButton mit der Maus über ein Bereich gesetzt wird.
Der Bildinhalt, der vom UI-Element angezeigt wird.
Bestimmt, wie eine gerendete Bild wird gefärbt.
Der Offset in Pixel der Unterseite eines Bildes, die angezeigt wird.
Bestimmt die Größe in Pixel der Unterbereich eines Bildes, die angezeigt werden soll.
Bestimmt die Transparenz des gerenderten Bildes.
Zeigt an, ob das Bild fertig geladen wurde von der Roblox-Website.
Eine Textur, die verwendet wird, wenn ein ImageButton gedrückt wird.
Wählt den Bild-Resammler-Modus für die Schaltfläche.
Bestimmt, wie ein Bild skaliert, wenn es in einem UI-Element angezeigt wird, dessen Größe vom Quellbild abweicht.
Setzt die Schnittgrenzen eines 9-sliced-Bildes.
Skaliert die 9-Slice-Kanten durch das angegebene Verhältnis.
Setzt die Kachelgröße des Bild Buttons.
Bestimmt, ob die Schaltfläche automatisch Farbe ändert, wenn die Maus darüber schwebt oder darauf klickt.
Wenn wahr, während der GUI-Element sichtbar ist, wird die Maus nicht gesperrt, wenn der rechte Maustaste nicht abgestellt ist.
EineBoolean-Eigenschaft, die anzeigt, ob das Objekt ausgewählt wurde.
Setzt den Stil des GuiButton basierend auf einer Liste von vordefinierten Stilen.
Bestimmt, ob dieses UI-Element die Eingabe sinkt.
Bestimmt den Ursprungspunkt eines GuiObject , relativer zu seiner absoluten Größe.
Bestimmt, ob das Skalieren basierend auf Kindern Inhalt.
Bestimmt die Hintergrundfarbe des GuiObject.
Bestimmt die Transparenz der GuiObject -Hintergrund und -Rand.
Bestimmt die Farbe der GuiObject Grenze.
Bestimmt, in welcher Weise die GuiObject Kante relativ zu ihren Dimensionen platziert ist.
Bestimmt die Pixelbreite der GuiObject Grenze.
Bestimmt, ob der Nachkomme GuiObjects außerhalb der Grenzen eines Eltern-GUI-Elements rendernwerden soll.
Bestimmt, ob die Maus des Spieler:inauf dem GuiObject aktiviert wird oder nicht.
Bestimmt, ob das GuiButton mit oder ohne Interaktion möglich ist, oder ob das GuiState der GuiObject geändert wird oder nicht.
Steuert die Sortierungsordnung der GuiObject bei Verwendung mit einem UIGridStyleLayout.
Setzt das GuiObject, das ausgewählt wird, wenn der Gamepad-Auswahlhebel nach unten verschoben wird.
Setzt das GuiObject, das ausgewählt wird, wenn der Gamepad-Auswahl器 nach links verschoben wird.
Setzt das GuiObject, das ausgewählt wird, wenn der Gamepad-Auswahlheber rechts verschoben wird.
Setzt das GuiObject, das ausgewählt wird, wenn der Gamepad-Auswahlheber nach oben verschoben wird.
Bestimmt die Pixel- und SkalierungsPosition des GuiObject.
Bestimmt die Anzahl der Grad, in denen das GuiObject gedreht wird.
Bestimmen Sie, ob das GUI durch eine Gamepadausgewählt werden kann.
Überschreibt die Standard-Auswahlornamente für Gamepads.
Die Reihenfolge von GuiObjects , die von der Spielpad-Auswahl ausgewählt wurde.
Bestimmt die Pixel- und Skalierungsgröße des GuiObject.
Setzt die Size Achsen, auf denen die GuiObject basieren wird, relativ zur Größe ihres übergeordnetes Teil.
Eine gemischte Eigenschaft von BackgroundTransparency und TextTransparency.
Bestimmt, ob das GuiObject und seine Nachkommen gerendert werden.
Bestimmt die Reihenfolge, in der ein GuiObject relativo zu anderen rendert.
Beschreibt die tatsächliche Bildschirmposition eines UI-Elements in Pixeln.
Beschreibt die tatsächliche Bildschirmdrehung eines UI-Elements, in Grad.
Beschreibt die tatsächliche Bildschirmgröße eines UI-Elements in Pixel.
Wenn auf wahr gesetzt, wird die Lokalisierung auf diesen GuiBase2d und seinen Nachkommen angewendet.
Eine Verweisung auf eine LocalizationTable , die verwendet wird, um automatisierte Lokalisierung auf diesen GuiBase2d und seinen Nachkommen anzuwenden.
Benutzerdefiniert das Verhalten der Gamepad-Auswahl in Richtung unten.
Anpassen Sie das Gamepad-Auswahlverhalten in der linken Richtung.
Benutzerdefiniert das Verhalten der Spielpad-Auswahl in die richtige Richtung.
Benutzerdefiniert das Verhalten der Gamepad-Auswahl in Richtung nach oben.
Erlaubt die Anpassung der Gamepad-Auswahl.
Methoden
Methoden von GuiObject übernommen- TweenPosition(endPosition : UDim2,easingDirection : Enum.EasingDirection,easingStyle : Enum.EasingStyle,time : number,override : bool,callback : function):bool
Bewegt eine GUI mühelos zu einem neuen UDim2.
- TweenSize(endSize : UDim2,easingDirection : Enum.EasingDirection,easingStyle : Enum.EasingStyle,time : number,override : bool,callback : function):bool
Skaliert eine GUI makellos zu einer neuen UDim2 .
- TweenSizeAndPosition(endSize : UDim2,endPosition : UDim2,easingDirection : Enum.EasingDirection,easingStyle : Enum.EasingStyle,time : number,override : bool,callback : function):bool
Verschwindet ein GUI mühelos auf eine neue Größe und Position.
Ereignisse
Ereignisse von GuiButton übernommenFeuert die Taste aktiviert.
Fehler: Die Maus hat die GUI-Schaltfläche vollständig verlassen, als sie vollständig klickt hat.
Feuert, wenn die Maus in der linken unteren Position auf dem GUI-Objekt ist.
Feuert, wenn die linke Maust die GUI-Objekt freigegeben hat.
Fehler: Die Maus hat die GUI-Schaltfläche vollständig mit der rechten Maustaste angeklickt.
Feuert, wenn die Maus im rechten Maus-Down-Zustand auf dem GUI-Objekt ist.
Feuern, wenn die rechte Maustaste auf einem GUI-Objekt freigelassen wurde.
Ausgelöst, wenn ein Benutzer mit einem Human-Computer-Interface-Gerät (Maus-Button, Touch-Anfang, Tastatur-Button usw.) interagiert.
Ausgelöst, wenn ein Benutzer die Interaktion über ein Mensch-Computer-Schnittstelle-Gerät (Maus-Button nach unten, Touch-Anfang, Tastatur-Button nach unten usw.) ändert.
Ausgelöst, wenn ein Benutzer die Interaktion über ein Mensch-Computer-Schnittstelle (Maus-Button, Touch-Beginn, Tastatur-Button usw.) aufgibt.
Feuert, wenn ein Benutzer seine Maus in ein GUI-Element bewegt.
Feuert, wenn ein Benutzer seine Maus aus einem GUI-Element bewegt.
Feuert, wenn ein Benutzer seine Maus bewegt, während sie in einem GUI-Element ist.
Feuert, wenn ein Benutzer seine Maus zurück scrollt, wenn die Maus über ein GUI-Element ist.
Feuert, wenn ein Benutzer seine Maus auf ein GUI-Element bewegt, wenn die Maus über einem GUI-Element ist.
Feuern, wenn das GuiObject mit dem Gamepad-Auswahl器 konzentriert wird.
Feuern, wenn der Gamepad-Auswahlbereich auf das GuiObject aufhört, sich zu konzentrieren.
Feuert, wenn der Spieler startet, hält und stoppt das Drücken der UI.
- TouchPan(touchPositions : Array,totalTranslation : Vector2,velocity : Vector2,state : Enum.UserInputState):RBXScriptSignal
Feuert, wenn der Spieler seinen Finger auf dem UI-Element bewegt.
- TouchPinch(touchPositions : Array,scale : number,velocity : number,state : Enum.UserInputState):RBXScriptSignal
Feuert, wenn der Spieler einen Pinch oder Ziehvorgang mit zwei Fingern auf der UI-Element ausführt.
- TouchRotate(touchPositions : Array,rotation : number,velocity : number,state : Enum.UserInputState):RBXScriptSignal
Feuert, wenn der Spieler einen Rotierungs-Gestalt mit zwei Fingern auf dem UI-Element ausführt.
Feuert, wenn der Spieler eine Swipe-Geste auf dem UI-Element ausführt.
Feuert, wenn der Spieler eine Berührung auf dem UI-Element ausführt.
- SelectionChanged(amISelected : bool,previousSelection : GuiObject,newSelection : GuiObject):RBXScriptSignal
Feuert, wenn die Gamepad-Auswahl bewegt wird, geht oder sich in der verbundenen GuiBase2d oder einem Nachfolge GuiObjekten ändert.
Eigenschaften
HoverImage
Eine Textur-ID, die verwendet wird, wenn der ImageButton mit der Maus über ein Bereich gesetzt wird.
Image
Das Bild-Eigenschaft ist eine Inhalts-Typ-Eigenschaft, die die Asset-ID eines Decals oder Bildes auf der Roblox-Website enthalten sollte. Es funktioniert identisch zu Decal.Texture in Bezug auf das Laden des Bildes von der Roblox-Website. Das gerendierte Bild wird in der Farbe ange
Code-Beispiele
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
Die Bildfarbe3-Eigenschaft bestimmt, wie ein Bild gefärbt wird. Wenn sie auf Weiß gesetzt ist, keine Farbung. Diese Eigenschaft ist sehr nützlich für die Wiederverwendung von Bildern: Wenn die Quelle-Bilder komplett weiß mit Transparenz ist, können Sie die gesamte Farbe des Bildes mit dieser Eigenschaftenauf einmal festlegen.
Code-Beispiele
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()
local RunService = game:GetService("RunService")
local imageLabel = script.Parent
local function onRenderStep()
imageLabel.ImageColor3 = Color3.fromHSV(workspace.DistributedGameTime / 8 % 1, 1, 1)
end
RunService.RenderStepped:Connect(onRenderStep)
ImageContent
ImageRectOffset
Erlaubt die teilweise Anzeige eines Bildes in Zusammenarbeit mit ImageButton.ImageRectSize. Diese Eigenschaft bestimmt den Pixel-Offset (von der oberen linken Seite) des Bildbereichs, der angezeigt werden soll.
Dieses Eigenschaftsverhalten ist identisch zu ImageLabel.ImageRectSize .
Code-Beispiele
-- 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
local imageLabel = script.Parent
-- Set the source image to be a 64x64 padlock
imageLabel.Image = "rbxassetid://284402752"
imageLabel.BackgroundTransparency = 0
imageLabel.BackgroundColor3 = Color3.new(1, 1, 1) -- White
imageLabel.ImageColor3 = Color3.new(0, 0, 0) -- Black
local function resizeInACircle()
for theta = 0, 2, 0.02 do
imageLabel.Size = UDim2.new(
0,
100 + math.cos(theta * 2 * math.pi) * 50,
0,
100 + math.sin(theta * 2 * math.pi) * 50
)
task.wait()
end
end
while true do
-- Stretch simply stretches the source image to fit
-- the UI element's space
imageLabel.ScaleType = Enum.ScaleType.Stretch
resizeInACircle()
-- Tile will render the source image multiple times
-- enough to fill the UI element's space
imageLabel.ScaleType = Enum.ScaleType.Tile
imageLabel.TileSize = UDim2.new(0, 64, 0, 64)
resizeInACircle()
-- Slice will turn the image into a nine-slice UI.
imageLabel.ScaleType = Enum.ScaleType.Slice
imageLabel.SliceCenter = Rect.new(30, 30, 34, 34)
resizeInACircle()
end
ImageRectSize
Erlaubt die teilweise Anzeige eines Bildes in Verbindung mit ImageButton.ImageRectOffset . Dieses Eigenschaft bestimmt die Pixelgröße des Bildbereichs, die angezeigt werden soll. Wenn eine der Dimensionen auf 0 gesetzt ist, wird stattdessen das gesamte Bild angezeigt.
Dieses Eigenschaftsverhalten ist identisch zu ImageLabel.ImageRectOffset .
Code-Beispiele
-- 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
local imageLabel = script.Parent
-- Set the source image to be a 64x64 padlock
imageLabel.Image = "rbxassetid://284402752"
imageLabel.BackgroundTransparency = 0
imageLabel.BackgroundColor3 = Color3.new(1, 1, 1) -- White
imageLabel.ImageColor3 = Color3.new(0, 0, 0) -- Black
local function resizeInACircle()
for theta = 0, 2, 0.02 do
imageLabel.Size = UDim2.new(
0,
100 + math.cos(theta * 2 * math.pi) * 50,
0,
100 + math.sin(theta * 2 * math.pi) * 50
)
task.wait()
end
end
while true do
-- Stretch simply stretches the source image to fit
-- the UI element's space
imageLabel.ScaleType = Enum.ScaleType.Stretch
resizeInACircle()
-- Tile will render the source image multiple times
-- enough to fill the UI element's space
imageLabel.ScaleType = Enum.ScaleType.Tile
imageLabel.TileSize = UDim2.new(0, 64, 0, 64)
resizeInACircle()
-- Slice will turn the image into a nine-slice UI.
imageLabel.ScaleType = Enum.ScaleType.Slice
imageLabel.SliceCenter = Rect.new(30, 30, 34, 34)
resizeInACircle()
end
ImageTransparency
Die BildTransparenz bestimmt die Alpha eines UI-Element-Renderings. Ein Wert von 0 ist vollständig opake, und ein Wert von 1 ist vollständig durchsichtig (unsichtbar). Diese Eigenschaft verhält sich ähnlich zu GuiObject.BackgroundTransparency oder BasePart.Transparency.
Code-Beispiele
local RunService = game:GetService("RunService")
local imageLabel = script.Parent
local function onRenderStep()
-- Oscillate ImageTransparency from 0 to 1 using a sine wave
imageLabel.ImageTransparency = math.sin(workspace.DistributedGameTime * math.pi) * 0.5 + 0.5
end
RunService.RenderStepped:Connect(onRenderStep)
IsLoaded
Die IsLoaded-Eigenschaft zeigt an, ob die ImageButton.Image-Eigenschaft vom Roblox-Website geladen wurde. Bilder, die von der Moderation abgelehnt wurden, werden niemals geladen.
Code-Beispiele
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
Eine Textur-ID, die als ImageButton Eigenschafteneingestellt werden kann. Wenn die Schaltfläche gedrückt wird, wird dieses Bild gerendert.
ResampleMode
Bestimmt, wie das Bild aussieht, wenn es skaliert wird.
Standardmäßig glättet das Bild die Textur, wenn es größer oder kleiner als seine Größe in der Texturentinner-Speicheranzeige ist. Im Gegensatz dazu Enum.ResamplerMode.Pixelated bewahrt die scharfen Kanten der BildPixel.
ScaleType
Die Skalierungstyp-Eigenschaft bestimmt, in welcher Weise ein ImageButton.Image gerendert wird, wenn die Größe des Elements der Benutzeroberfläche von der Größe der Quelle abweicht.
Standardmäßig ist diese Eigenschaft Enum.ScaleType.Stretch, was einfach die Bildgrößen ausstreckt/komprimiert, damit sie genau dem Skalierungselement passen. Da transparente Pixel beim Hochladen auf die Roblox-Website schwarz gesetzt sind, sollten transparente Bilder Alpha-Blend verwenden, um eine schwarze Umriss um skalierte Bilder zu vermeiden.
Für Enum.ScaleType.Slice wird die Eigenschaft ImageButton.SliceCenter im Eigenschaften-Fenster angezeigt. Dies gilt für 9-Slice-UI: Wenn Sie das Skalieren aufrufen, bleiben die Ecken die Quellgröße des Bildes. Die Kanten des Bildes werden sich beim Skalieren auf die Breite/Höhe des Bildes ausdehnen. Schließlich
Schließlich, für Enum.ScaleType.Tile, wird die Eigenschaft ImageButton.TileSize in dem Eigenschaften-Fenster angezeigt. Dies gilt für gestaltete Bilder, bei denen die Größe jedes Bildes durch die ImageButton.TileSize -Eigenschaft bestimmt wird.
Code-Beispiele
local imageLabel = script.Parent
-- Set the source image to be a 64x64 padlock
imageLabel.Image = "rbxassetid://284402752"
imageLabel.BackgroundTransparency = 0
imageLabel.BackgroundColor3 = Color3.new(1, 1, 1) -- White
imageLabel.ImageColor3 = Color3.new(0, 0, 0) -- Black
local function resizeInACircle()
for theta = 0, 2, 0.02 do
imageLabel.Size = UDim2.new(
0,
100 + math.cos(theta * 2 * math.pi) * 50,
0,
100 + math.sin(theta * 2 * math.pi) * 50
)
task.wait()
end
end
while true do
-- Stretch simply stretches the source image to fit
-- the UI element's space
imageLabel.ScaleType = Enum.ScaleType.Stretch
resizeInACircle()
-- Tile will render the source image multiple times
-- enough to fill the UI element's space
imageLabel.ScaleType = Enum.ScaleType.Tile
imageLabel.TileSize = UDim2.new(0, 64, 0, 64)
resizeInACircle()
-- Slice will turn the image into a nine-slice UI.
imageLabel.ScaleType = Enum.ScaleType.Slice
imageLabel.SliceCenter = Rect.new(30, 30, 34, 34)
resizeInACircle()
end
SliceCenter
Die Eigenschaft SliceCenter setzt die Schnittgrenzen eines 9-gespaltenen Bildes, wenn ImageButton.ScaleType auf Enum.ScaleType.Slice festgelegt ist. Bitte beachten Sie, dass diese E
Um mehr über 9-sliced-Bilder zu erfahren, siehe dieses Tutorial: UI 9 Slice Design.
Code-Beispiele
local imageLabel = script.Parent
-- Set the source image to be a 64x64 padlock
imageLabel.Image = "rbxassetid://284402752"
imageLabel.BackgroundTransparency = 0
imageLabel.BackgroundColor3 = Color3.new(1, 1, 1) -- White
imageLabel.ImageColor3 = Color3.new(0, 0, 0) -- Black
local function resizeInACircle()
for theta = 0, 2, 0.02 do
imageLabel.Size = UDim2.new(
0,
100 + math.cos(theta * 2 * math.pi) * 50,
0,
100 + math.sin(theta * 2 * math.pi) * 50
)
task.wait()
end
end
while true do
-- Stretch simply stretches the source image to fit
-- the UI element's space
imageLabel.ScaleType = Enum.ScaleType.Stretch
resizeInACircle()
-- Tile will render the source image multiple times
-- enough to fill the UI element's space
imageLabel.ScaleType = Enum.ScaleType.Tile
imageLabel.TileSize = UDim2.new(0, 64, 0, 64)
resizeInACircle()
-- Slice will turn the image into a nine-slice UI.
imageLabel.ScaleType = Enum.ScaleType.Slice
imageLabel.SliceCenter = Rect.new(30, 30, 34, 34)
resizeInACircle()
end
SliceScale
Skaliert die 9-Kante-Kanten durch das angegebte Verhältnis. Dies bedeutet, dass die Kanten um die 9-Kante wachsen, als ob du eine neue Version der Textur hochgeladen hast. Standard ist 1.0.
Als Multiplikator für die Kanten eines 9-Slice ist es nützlich, ein umgerundetes Eckbild für mehrere Radii wiederzuverwenden
Siehe auch:
- ImageButton.ScaleType , bestimmt, wie ein Bild skaliert, wenn es in einem UI-Element angezeigt wird, whose Größe vom Quellbild abweicht
- ImageLabel.ScaleCenter , bestimmt die Mitte eines 9-Slice-Bildes
- ImageButton.SliceScale , die gleiche Eigenschaft in Bezug auf die Funktionalität, aber für ImageButtons
TileSize
TileSize setzt die Fliesengröße des ImageButton. Die Standardwerte UDim2 sind 1,0,1,0. Die Skalierungskomponente des UDim2 wird die Fliese basierend auf der Größe des ImageButton skalieren. Der Offset beginnt in原始Pixel. Die Skalierung beginnt an der oberen linken Ecke des Bildes. Zum Beispiel ein Skalierung von 0.5
Diese Eigenschaft ist nur aktiv, wenn der ScaleType für die Bildschaltfläche auf "Tile" eingestellt ist, nicht auf "Stretch" oder "Fill".
Code-Beispiele
local imageLabel = script.Parent
-- Set the source image to be a 64x64 padlock
imageLabel.Image = "rbxassetid://284402752"
imageLabel.BackgroundTransparency = 0
imageLabel.BackgroundColor3 = Color3.new(1, 1, 1) -- White
imageLabel.ImageColor3 = Color3.new(0, 0, 0) -- Black
local function resizeInACircle()
for theta = 0, 2, 0.02 do
imageLabel.Size = UDim2.new(
0,
100 + math.cos(theta * 2 * math.pi) * 50,
0,
100 + math.sin(theta * 2 * math.pi) * 50
)
task.wait()
end
end
while true do
-- Stretch simply stretches the source image to fit
-- the UI element's space
imageLabel.ScaleType = Enum.ScaleType.Stretch
resizeInACircle()
-- Tile will render the source image multiple times
-- enough to fill the UI element's space
imageLabel.ScaleType = Enum.ScaleType.Tile
imageLabel.TileSize = UDim2.new(0, 64, 0, 64)
resizeInACircle()
-- Slice will turn the image into a nine-slice UI.
imageLabel.ScaleType = Enum.ScaleType.Slice
imageLabel.SliceCenter = Rect.new(30, 30, 34, 34)
resizeInACircle()
end