ImageButton
*Bu içerik, yapay zekâ (beta) kullanılarak çevrildi ve hatalar içerebilir. Sayfayı İngilizce görüntülemek için buraya tıkla.
Bir ImageButton, ImageLabel ile aynı davranırken bir GuiButton ile renderlenmesiyle ilgili olarak. Aynı görüntü renderleme özelliklerini ImageLabel ile tanımlar.
Görüntü renderini devre dışı bırakmak için ImageButton.ImageTransparency 1'e ayarlayın. Bu, buton olarak kullanılabilen bir yuva bırakacaktır. Ancak, bu için boş bir TextButton kullanmak daha iyi olabilir.
Kod Örnekleri
-- 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()
Özet
Özellikler
Class.ImageButton başlığının fare ile sürükleme işlemi yapıldığında kullanılan bir doku kimliği.
Ekran elemanının gösterdiği görüntü içeriği. ImageContent 'e okur ve yazar.
Gerçekleştirilen bir görüntünün renklenmesini belirler.
Ekran içeriğini gösteren UI öğesi. varlık URIs ve EditableImage nesneleri destekler.
Görüntülenmesi gereken bir görüntünün alt alanındaki ofset.
Görüntülenen bir alanın piksel boyutunu belirler.
Görüntülenen görüntünün görünürlüğünü belirler.
Görüntünün Roblox web sitesinden yüklenmesini tamamladığını gösterir.
Bir Class.ImageButton ile bastırıldığında kullanılan bir textureId.
Buton için görüntü yeniden düzenleme modunu seçer.
Bir görüntünün kaynağından farklı olan UI öğesiinde gösterilmesinin nasıl bir ölçeği belirler.
9 dilimli bir görüntünün kesme sınırlarını ayarlar.
9 dilimli kenarları belirli oranla büyütür.
ImageButton'un kare ölçeğini ayarlar.
Butonun fareyi üzerine getirdiğinde veya tıkladığında otomatik olarak rengini değiştirdiğini belirler.
Eğer GUI öğesi görünürken doğru fare düğmesi aşağıda değilse, fare kilit olmaz.
Eşyayı seçip seçmediğini gösteren bir booleyi özelliğidir.
GuiButton'un stilini önceden belirlenmiş stil listesine dayanarak ayarlar.
Bu UI öğesi girişi batırır mı belirler.
GuiObject 'nin mutlak büyüklüğüne göre kaynağını belirler.
Çocuk içeriğine dayalı olarak yeniden boyutlandırma olup olmadığını belirler.
Class.GuiObject arka plan rengini belirler.
Class.GuiObject arka planı ve sınırının transparansını belirler.
GuiObject sınırının rengini belirler.
Class.GuiObject sınırının boyutlarına göre ne şekilde çizildiğini belirler.
GuiObject sınırının piksel genişliğini belirler.
Bir ebeveyn GUI öğesi dışındaki çizgi şu şekilde olmalıdır: GuiObjects
oyuncumouse'unun aktif olarak GuiObject üzerine basılı olup olmadığını belirler.
Class.GuiButton ile etkileşime geçilebilir mi yoksa değil, GuiState ile GuiObject arasındaki şekli değiştirilebilir mi yoksa değil.
Class.UIGridStyleLayout ile kullanıldığında UIGridStyleLayout 'in sıralama düzenini kontrol eder.
Oyun aracı seçici aşağıya hareket ettirildiğinde seçilecek GuiObject ı ayarlar.
Oyun aracı seçici sola hareket ettirildiğinde seçilecek GuiObject ayarlarını ayarlar.
Oyun aracı seçici sağa hareket ettirildiğinde seçilecek GuiObject ayarlarını ayarlar.
Oyun aracı seçici yukarı hareket ettirildiğinde seçilecek GuiObject ayarlarını ayarlar.
Class.GuiObject 'in piksel ve skalar pozisyonunu belirler.
Class.GuiObject döndürülmesinin oluğunu belirler.
Oyunpad tarafından seçilebilir GUI ile seçilebilir olup olmadığını belirleyin.
Oyunpadlar için kullanılan varsayılan seçim süslemesini geçersiz kılar.
Oyunpad seçiminin seçtiği GuiObjects sırası.
GuiObject 'in piksel ve skalar boyutlarını belirler.
Class.GuiObject ebeveyninin boyutuna göre GuiObject üzerine inşa edilecek Class.GuiObject.Size|Size eksenlerini ayarlar.
Class.GuiObject.BackgroundTransparency|BackgroundTransparency ile TextTransparency arasındaki karışık bir özellik.
Class.GuiObject ve onun çıplaklarının renderlenmesine izin verir.
Class.GuiObject ile ilgili diğerlerine göre şekillendirilen sırayı belirler.
Bir UI öğesinin gerçek ekran pozisyonunu, piksel olarak açıklar.
Bir UI öğesinin asıl ekran dönüşümünü, dereceler olarak açıklar.
Bir UI öğesi'nin aslındaki ekran büyüklüğünü,像 olarak tanımlar.
Açık olarak ayarlandığında, yerelleştirme bu GuiBase2d ve onun aşağıdaki soyundaki tüm benzerlerine uygulanacaktır.
Bu GuiBase2d ve onun aşağıdaki soyundaki otomatik yerelleştirmeyi uygulamak için kullanılan bir referans.
Aşağı yönlü gamepad seçimi davranışını özelleştirir.
Sol yönlü gamepad seçimi davranışını özelleştirir.
Oyun direği seçim davranışını özelleştirir.
Yukarı yönlendirme içinde oyun aracı seçim davranışını özelleştirir.
Oyun başlantısı seçimi hareketinin özelleştirilmesini sağlar.
Yöntemler
Şuradan alınan Yöntemler: GuiObject- TweenPosition(endPosition : UDim2,easingDirection : Enum.EasingDirection,easingStyle : Enum.EasingStyle,time : number,override : bool,callback : function):bool
Bir GUI'yu yeni bir UDim2 'a düzgün bir şekilde hareket ettirir.
- TweenSize(endSize : UDim2,easingDirection : Enum.EasingDirection,easingStyle : Enum.EasingStyle,time : number,override : bool,callback : function):bool
Bir GUI'yu yeni bir UDim2 ile otomatik olarak yeniden boyutlandırır.
- TweenSizeAndPosition(endSize : UDim2,endPosition : UDim2,easingDirection : Enum.EasingDirection,easingStyle : Enum.EasingStyle,time : number,override : bool,callback : function):bool
Bir GUI'yu yeni bir boyuta ve konuma hızlıca hareket ettirir.
Etkinlikler
Şuradan alınan Etkinlikler: GuiButtonButon aktif olduğunda ateş eder.
Mouse tamamen solduğunda GUI düğmesine tıklandığında ateş edildi.
GUI nesnesinde sağ fare aşağı durumda olduğunda ateşlendi.
Sol fare GUI nesnelerinden birini serbest bıraktığında başlatıldı.
Farenin tam olarak sağladığında GUI düğmesine tıklandığında ateşlendi.
GUI nesnesinde sağ fare düşük durumda olduğunda ateşlendi.
GUI'nin bir nesinde sağ fare düğmesi serbest bırakıldığında başlatıldı.
Bir kullanıcı, Bir insan-bilgisayar arayüzü cihazı (Farenin aşağısına basma, dokunma başlangıcı, klavye düğmesine aşağı, vb) ile etkileşime geçmeye başladığında oluşturuldu.
Bir kullanıcı, bir Human-Computer Interface cihazı (Mouse button down, touch begin, keyboard button down, etc) aracılığıyla etkileşim kurarken ateşlenir.
Bir kullanıcı, Bir İnsan-Bilgisayar Arayüzü cihazı (Farenin aşağısına gitmesi, dokunma başlangıcı, klavye düğmesi vb.) kullanımını bıraktığında başlatıldı.
Bir kullanıcının mouse'ını bir GUI öğesine hareket ettirince ateş eder.
Bir kullanıcı, farelerini bir GUI öğesinden çıkarırsa ateş eder.
Bir kullanıcının fareini GUI elemanının içinde hareket ettirirken herhangi bir zaman ateş eder.
Bir kullanıcı, fare yüzdesi aştığında, fareyi GUI öğesi üzerinde olduğunda geri çevirir.
Bir kullanıcı, fareyi bir GUI öğesi üzerinde olduğunda ileriye çektiğinde ateş eder.
Gamepad seçici ile GuiObject'e odaklanıldığında yanıyor.
Gamepad seçici Gameui'yu odaklanmaktan vazgeçtiğinde yanıyor.
Oyuncu başladığında, devam ettiğinde ve UI öğesi üzerinde uzun basılı tutulduğunda ateşlenir.
- TouchPan(touchPositions : Array,totalTranslation : Vector2,velocity : Vector2,state : Enum.UserInputState):RBXScriptSignal
Oyuncu parmaklarını UI elemanında hareket ettirirken ateş eder.
- TouchPinch(touchPositions : Array,scale : number,velocity : number,state : Enum.UserInputState):RBXScriptSignal
Oyuncu iki parmak kullanarak bir çıkarma veya çekme hareketini yaptığında ateş eder.
- TouchRotate(touchPositions : Array,rotation : number,velocity : number,state : Enum.UserInputState):RBXScriptSignal
Oyuncu iki parmak kullanarak döndürme hareketi yaptığında ateş eder.
Oyuncu UI elementinde bir swipe hareketi yaptığında ateş eder.
Oyuncu UI elementinde bir dokunma hareketi yaptığında ateş eder.
- SelectionChanged(amISelected : bool,previousSelection : GuiObject,newSelection : GuiObject):RBXScriptSignal
Gamepad seçimi hareket ettiğinde, ayrıldığında veya bağlı GuiBase2d'de veya ilgili herhangi bir GuiObjeleri değiştirdiğinde ateş eder.
Özellikler
HoverImage
Class.ImageButton başlığının fare ile sürükleme işlemi yapıldığında kullanılan bir doku kimliği.
Image
Bu öğe, bir çıkartma veya görüntü yüklenmiş olan Roblox'a kaydedilen varlık kimliğini içeren bir içerik türü öğesiidir. Aynı şekilde Decal.Texture ile ilgili olarak, gör
Kod Örnekleri
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
GörüntüRenk3 özelliği, bir görüntünün renklenmesini belirler. Beyaz olarak ayarlandığında renklenme olmaz. Bu özellik, görüntü kaynaklarını yeniden kullanmak için çok kullanışlıdır: Kaynağın tüm rengi trasparensi ile bir kez ayarlanabilir.
Kod Örnekleri
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
Bu özellik bir varsayılan veya bir EditableImage nesneyi içeriyor olmalıdır.
Varlık kaynağı, bir çıkartma veya görüntü yüklenmiş olabilir Roblox'a. Aynı şekilde işlev görür Decal.Texture ile ilgili olarak görüntü yüklenmesi konusunda.
Oluşturulan görüntü renkli olacak şekilde boyanacak. ImageButton.ImageColor3 kullanılarak görüntü renkli olarak yapılandırılabilir. ImageButton.ScaleType özelliğine göre 9-sliced olarak yapılandırılabilir.
ImageRectOffset
Bir görüntünün parçalı gösterilmesini ImageButton.ImageRectSize ile birleştirir. Bu özellik, görüntü alanının gösterileceği üst kısma sol kısma karşı oluşturulan piksel ofsetini belirler.
Bu özellik ImageLabel.ImageRectSize ile aynı davranır.
Kod Örnekleri
-- 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
Bir görüntünün parçalı gösterimini ImageButton.ImageRectOffset ile birleştirir. Bu özellik, görüntünün gösterim boyutunu belirler. Eğer herhangi bir boyut 0 olarak ayarlanırsa, tüm görüntü gösterilir.
Bu özellik ImageLabel.ImageRectOffset ile aynı davranır.
Kod Örnekleri
-- 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
GörüntüBirimi, bir UI öğesi render edilen görüntünün alfa'sını belirler. Bir değer 0, kaynağının görünmez olduğunu gösterir ve bir değer 1, kaynağının şeffaflığını gösterir (görünmez). Bu özellik, GuiObject.BackgroundTransparency veya BasePart.Transparency ile aynı davranır
Kod Örnekleri
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
IsLoaded özelliği, ImageButton.Image özelliğinin Roblox web sitesinden yüklenmesini gösterir. Moderasyon tarafından reddedilen görüntüler asla yüklenmez.
Kod Örnekleri
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
Class.ImageButton özelliği olarak ayarlanabilen bir doku kimliği. Buton basıldığında, bu görüntüyü renderleyecektir.
ResampleMode
Resimin boyutlandırıldığında görünümünü belirler.
Varsayılan olarak, görüntü büyük veya küçük olduğu teknik belleğin boyutundan daha büyük veya daha küçük olduğunda görüntüyü düzeltir. Bu nedenle, Enum.ResamplerMode.Pixelated görüntünün pikseli pikseli pikseli pikseli pikseli pikseli pikseli pikseli pikseli pikseli pikseli pikseli pikseli pik
ScaleType
ScaleType öğesi, ImageButton.Image ın kullanıcı arayüz öğesiyle aynı ölçekte görüntülenmesini sağlar.
Varsayılan olarak, bu özellik Enum.ScaleType.Stretch , bu da basit olarak görüntü boyutlarını genişletir/sıkıştırır, böylece UI öğesi alanına aynen uyar. Özelleştirilen görüntüler Roblox web sitesine yüklenirken透明 piksel olarak ayarlanır, bu da küçük ç
For Enum.ScaleType.Slice , the ImageButton.SliceCenter özelliği özellikler pencerede görüntülenir. Bu 9-Slice UI için: kenarlar kaynağın boyutunu korur. resim genişliği genişliğine genişliği genişliği genişliği genişliği geniş
Son olarak, Enum.ScaleType.Tile için, ImageButton.TileSize özelliği ImageButton.TileSize penceresinde görüntülenir. Bu, çerçeveli görüntüler için, her bir görüntü iletkeninin boyutunu belirleyen 2> Class.ImageButton.TileSize2> özelliğidir.
Kod Örnekleri
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
The SliceCenter özelliği, ImageButton.ScaleType olarak ayarlandığında 9-sliced bir görüntünün kesme sınırlarını belirlerken çizgi sınırlarını
9-bölmeli görüntüler hakkında daha fazla bilgi için bu öğreticiyi kontrol edin: UI 9 Slice Design.
Kod Örnekleri
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
9-bölme kenarlarını belirli oranla ölçekler. Bu, 9-bölme etrafındaki kenarların yükseltilmiş versiyonunu yüklediğiniz gibi büyüyeceğini ifade eder.Varsayılan 1.0.
9 katlı kenarlar için bir çarpan olarak, bir turuncu kenar görüntüsü için birden fazla radyi için kullanılabilir
Ayrıca bakınız:
- ImageButton.ScaleType , bir UI öğesi içinde görüntülenen bir grafik ölçeğini belirler.
- ImageLabel.ScaleCenter , 9 dilimli bir görüntünün merkezini belirler
- ImageButton.SliceScale , aynı özellikleri işlevsel olarak ImageButtons için
TileSize
TileSize, ImageButton'un kareli büyüklüğünü ayarlar.Varsayılan UDim2 değerleri 1,0,1,0. UDim2'nin ölçek bileşenine, karenin boyutuna dayanarak kare büyüklüğü ayarlanır. Offset, doğrudan pikselde başlar. Tile'
Bu özellik sadece ScaleType for the ImageButton'ın Slice veya Stretch yerine Tile olarak ayarlandığında aktif olur.
Kod Örnekleri
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