ImageLabel

Pokaż przestarzałe

*Ta zawartość została przetłumaczona przy użyciu narzędzi AI (w wersji beta) i może zawierać błędy. Aby wyświetlić tę stronę w języku angielskim, kliknij tutaj.

An ImageLabel renderuje prostokąt, tak jak to robi Frame z zasobem obrazowym.Wyświetlanie obrazu można manipulować za pomocą właściwości ImageColor3 i ImageTransparency.Aby wyświetlić tylko obraz i ukryć prostokąt, ustaw GuiObject.BackgroundTransparency na 1.

Zaawansowane użycie ImageLabel obejmuje:

  • Płytkie obrazy można utworzyć, ustawiając ScaleType na Enum.ScaleType.Tile , a następnie TileSize do rozmiaru renderowanych płytek.

  • obrazy 9-planszowe można utworzyć, ustawiając ScaleType na Enum.ScaleType.Slice , a następnie SliceCenter do środkowej części obrazu 9-planszowego.

  • Arkusze spritów mogą być wdrożone za pomocą użycia ImageRectOffset i ImageRectSize.Pakowanie wielu obrazów do jednego i wykorzystanie tej właściwości może znacznie przyspieszyć ładowanie zasobów obrazu w Twojej aplikacji, szczególnie jeśli używasz wielu małych ikon w swoich interfejsach użytkownika.

Podsumowanie

Właściwości

  • Image:ContentId
    Odczyt równoległy

    Treść obrazu wyświetlana przez element interfejsu użytkownika. Czyta i pisze do ImageContent .

  • Odczyt równoległy

    Określa, w jaki sposób wyrenderowane obraz zostanie skoloryzowany.

  • Odczyt równoległy

    Treść obrazu wyświetlana przez element interfejsu użytkownika. Wspiera URI zasobów i EditableImage.

  • Odczyt równoległy

    Odległość w pikselach podobszaru obrazu, który ma być wyświetlony.

  • Odczyt równoległy

    Określa rozmiar w pikselach podobszaru obrazu, który ma być wyświetlony.

  • Odczyt równoległy

    Określa przejrzystość renderowanego obrazu.

  • Tylko do odczytu
    Bez replikacji
    Odczyt równoległy

    Wskazuje, czy obraz został załadowany z Roblox.

  • Odczyt równoległy

    Wybiera tryb odtwarzania obrazu dla etykiety.

  • Odczyt równoległy

    Określa, jak skalować obraz, jeśli zostanie wyświetlony w elementzie interfejsu użytkownika, którego rozmiar różni się od rozmiaru źródłowego obrazu.

  • Odczyt równoległy

    Ustawia granice kawałków obrazu 9-sliced.

  • Odczyt równoległy

    Skaluje krawędzie 9-planszy według określonej proporcji.

  • Odczyt równoległy

    Ustawia rozmiar płytek ImageLabel .

Właściwości odziedziczeni z: GuiObjectWłaściwości odziedziczeni z: GuiBase2d

Metody

Metody odziedziczeni z: GuiObject

Zdarzenia

Zdarzenia odziedziczeni z: GuiObjectZdarzenia odziedziczeni z: GuiBase2d

Właściwości

Image

ContentId
Odczyt równoległy

Właściwość ta jest właściwością typu zawartości, która powinna zawierać identyfikator zasobu decalu lub obrazu przesłanego do Roblox.Funkcjonuje identycznie do Decal.Texture w odniesieniu do ładowania obrazu z Roblox.Rendowany obraz można modyfikować za pomocą ImageColor3 i ImageTransparency.

ImageColor3

Odczyt równoległy

Właściwość ta określa, jak obraz jest koloryzowany.Gdy ustawiono na biały, nie występuje koloryzacja.Właściwość ta jest bardzo przydatna do ponownego wykorzystania zasobów obrazowych; jeśli źródłowy obraz jest całkowicie biały z przejrzystością, możesz ustawić cały kolor obrazu naraz za pomocą tej właściwości.

ImageContent

Odczyt równoległy

Właściwość ta powinna zawierać URI zasobu lub odniesienie do obiektu EditableImage.

Adres URL zasobu może odwoływać się do znaku lub obrazu przesłanego do Roblox. Funkcjonuje identycznie do Decal.Texture w odniesieniu do ładowania obrazu.

Rendowany obraz zostanie skoloryzowany za pomocą ImageButton.ImageColor3 .Można wyrenderować obraz jako płytki, skalowany do pasuje lub 9-sliced, dostosowując właściwość ImageButton.ScaleType.

ImageRectOffset

Odczyt równoległy

Pozwala częściowemu wyświetleniu obrazu w połączeniu z ImageRectSize.Właściwość ta określa przesunięcie pikseli (z góry w lewo) obszaru obrazu, który ma być wyświetlony.

ImageRectSize

Odczyt równoległy

Pozwala częściowemu wyświetleniu obrazu w połączeniu z ImageRectOffset.Właściwość ta określa rozmiar pikseli obszaru obrazu, który ma być wyświetlony.Jeśli którykolwiek wymiar jest ustawiony na 0, cały obraz jest wyświetlany zamiast tego.

ImageTransparency

Odczyt równoległy

Właściwość ta określa alfa obrazu renderowanego przez element UI.Wartość 0 jest całkowicie niejasna, a wartość 1 jest całkowicie przejrzysta (niewidoczna).

Przykłady kodu

This code sample oscillates the ImageTransparency of an ImageLabel/ImageButton from 0 to 1 using a sine wave.

Oscillate ImageTransparency

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

Tylko do odczytu
Bez replikacji
Odczyt równoległy

Właściwość ta wskazuje, czy właściwość ImageLabel.Image została załadowana z Roblox. Obrazy odrzucone przez moderację nigdy się nie wczytywać.

Przykłady kodu

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.

Image Load Time

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))

ResampleMode

Odczyt równoległy

Określa, jak wygląda obraz, gdy jest skalowany.Domyślnie obraz wygładza teksturę podczas wyświetlania na ekranie większym lub mniejszym niż jego rozmiar w pamięci teksturowej.Gdy ustawiono na Enum.ResamplerMode.Pixelated, obraz zachowuje ostre krawędzie pikseli.

Odczyt równoległy

Właściwość ta określa, w jaki sposób ImageLabel.Image jest renderowany, gdy rozmiar elementu interfejsu różni się od rozmiaru źródłowego obrazu.

Domyślnie właściwość ta wynosi Enum.ScaleType.Stretch, co po prostu rozciągnie/skompresuje wymiary obrazu, aby dokładnie pasowały do przestrzeni elementu interfejsu użytkownika.Ponieważ przeźroczyste piksele są ustawione na czarny kolor podczas przesyłania do Roblox, przeźroczyste obrazy powinny stosować mieszanie alfa, aby uniknąć czarnego obrysu wokół skalowanych obrazów.

Dla Enum.ScaleType.Slice właściwość SliceCenter zostanie ujawniona w oknie Właściwości.Jest to dla interfejsu użytkownika dziewięciowarstwowego: podczas skalowania w górę rogi pozostaną rozmiarem źródłowym obrazu.Krawędzie obrazu rozciągną się do szerokości/wysokości obrazu.Wreszcie, centrum obrazu rozciągnie się, aby wypełnić środkową część obrazu.

Wreszcie, dla Enum.ScaleType.Tile właściwość TileSize zostanie ujawniona w oknie Właściwości.Chodzi o płytkie obrazy, w których rozmiar każdej płytki obrazu jest określany przez właściwość TileSize.

SliceCenter

Odczyt równoległy

Właściwość ta ustawia granice kawałków obrazu o grubości 9, gdy ScaleType jest ustawiony na Enum.ScaleType.Slice.Pamiętaj, że ta właściwość jest widoczna tylko w oknie Właściwości pod tym warunkiem.

Aby dowiedzieć się więcej o obrazach 9-planszowych, zobacz UI 9 Slice Design.

SliceScale

Odczyt równoległy

Skaluje krawędzie 9-planszy według określonej proporcji.Oznacza to, że krawędzie wokół 9-plastra będą rosły tak, jak gdybyś przesłał nową wersję tekstury uproszczoną.Domyślnie do 1.0.

Zobacz także ScaleType , SliceCenter i SliceScale .

TileSize

Odczyt równoległy

Właściwość ta ustawia rozmiar płytek dla ImageLabel z domyślną wartością UDim2.new(1, 0, 1, 0) .Płytkowanie zaczyna się w lewym górnym rogu obrazu.Właściwość ta jest aktywna tylko wtedy, gdy ScaleType dla ImageLabel jest ustawiona na Enum.ScaleType.Tile.

Przykłady kodu

This code sample demonstrates the different ScaleType options - Stretch, Tile and Slice. It does this by resizing an ImageLabel/ImageButton in a circle.

Image ScaleType Demo

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

Metody

Zdarzenia