ImageLabel
*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
Treść obrazu wyświetlana przez element interfejsu użytkownika. Czyta i pisze do ImageContent .
Określa, w jaki sposób wyrenderowane obraz zostanie skoloryzowany.
Treść obrazu wyświetlana przez element interfejsu użytkownika. Wspiera URI zasobów i EditableImage.
Odległość w pikselach podobszaru obrazu, który ma być wyświetlony.
Określa rozmiar w pikselach podobszaru obrazu, który ma być wyświetlony.
Określa przejrzystość renderowanego obrazu.
Wskazuje, czy obraz został załadowany z Roblox.
Wybiera tryb odtwarzania obrazu dla etykiety.
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.
Ustawia granice kawałków obrazu 9-sliced.
Skaluje krawędzie 9-planszy według określonej proporcji.
Ustawia rozmiar płytek ImageLabel .
Określa, czy ten element interfejsu zanurza wejście.
Określa punkt pochodzenia GuiObject , względem jego absolutnego rozmiaru.
Określa, czy zmiana rozmiaru następuje w oparciu o treść dziecka.
Określa kolor tła GuiObject.
Określa przejrzystość tła i ramki GuiObject.
Określa kolor obramowania GuiObject.
Określa, w jaki sposób granica GuiObject jest rozmieszczona względem jej wymiarów.
Określa szerokość piksela obramowania GuiObject.
Określa, czy potomek GuiObjects poza granicami elementu GUI rodzica powinien się renderować.
Określa, czy mysz gracza jest aktywnie naciśnięta na GuiObject lub nie.
Określa, czy GuiButton można wejść w interakcję, czy nie, lub czy GuiState z GuiObject zmienia się lub nie.
Kontroluje kolejność sortowania GuiObject przy użyciu UIGridStyleLayout .
Ustawia GuiObject, które zostaną wybrane, gdy selektor gamepada zostanie przesunięty w dół.
Ustawia GuiObject, które zostaną wybrane, gdy selektor gamepada zostanie przesunięty w lewo.
Ustawia GuiObject, które zostaną wybrane, gdy selektor gamepada zostanie przesunięty w prawo.
Ustawia GuiObject, które zostaną wybrane, gdy selektor gamepada zostanie przesunięty w górę.
Określa pozycję piksela i skalarną pozycję GuiObject.
Określa liczbę stopni, w jakich GuiObject jest obrócony.
Określ, czy GuiObject może być wybrane przez gamepad.
Zastępuje domyślną ozdobę selekcji używaną do gamepadów.
Kolejność GuiObjects wybrana przez wybór interfejsu gamepada.
Określa rozmiar piksela i skali GuiObject .
Ustawia osie Size, na których GuiObject będzie oparty, w stosunku do rozmiaru jego rodzica.
Mieszana właściwość BackgroundTransparency i TextTransparency.
Określa, czy GuiObject i jego potomkowie zostaną wyrenderowane.
Określa kolejność, w której renderowanie GuiObject względem innych.
Opisuje rzeczywistą pozycję ekranu elementu GuiBase2d w pikselach.
Opisuje rzeczywitą rotację ekranu elementu GuiBase2d w stopniach.
Opisuje rzeczywistą rozdzielczość ekranu elementu GuiBase2d w pikselach.
Gdy ustawiono na true, lokalizacja zostanie zastosowana do tego GuiBase2d i jego potomków.
Odwołanie do LocalizationTable , które ma być użyte do zastosowania automatyzowanej lokalizacji do tego GuiBase2d i jego potomków.
Dostosowuje zachowanie wyboru pada w dół w grze.
Dostosowuje zachowanie wyboru gamepada w lewo.
Dostosowuje zachowanie wyboru gamepada w prawnym kierunku.
Dostosowuje zachowanie wyboru gamepada w kierunku góry.
Umożliwia dostosowanie ruchu wyboru gamepada.
Metody
Metody odziedziczeni z: GuiObject- TweenPosition(endPosition : UDim2,easingDirection : Enum.EasingDirection,easingStyle : Enum.EasingStyle,time : number,override : boolean,callback : function):boolean
Płynnie przenosi interfejs użytkownika do nowego 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
Płynnie przesuwa interfejs użytkownika do nowego rozmiaru i pozycji.
Zdarzenia
Zdarzenia odziedziczeni z: GuiObjectWystrzeliwany, gdy użytkownik zaczyna interakcję za pomocą urządzenia interfejsu człowiek-komputer (przycisk myszy w dół, dotknięcie rozpoczęcia, przycisk klawiatury w dół itp.).
Wystrzeliwany, gdy użytkownik zmienia sposób interakcji za pomocą urządzenia interfejsu człowiek-komputer (przycisk myszy w dół, dotknięcie początku, przycisk klawiatury w dół itp.).
Wystrzeliwany, gdy użytkownik przestaje interakcjonować za pomocą urządzenia interfejsu człowiek-komputer (przycisk myszy w dół, dotknięcie początku, przycisk klawiatury w dół itp.).
Wystrzeliwuje, gdy użytkownik przesuwa mysz do elementu GUI.
Wystrzeliwuje, gdy użytkownik przesuwa mysz poza element interfejsu graficznego.
Wystrzeliwuje za każdym razem, gdy użytkownik przesuwa mysz, gdy znajduje się w środku elementu GUI.
Wystrzeliwuje, gdy użytkownik przewija koło myszy wstecz, gdy mysz znajduje się nad elementem GUI.
Wystrzeliwuje, gdy użytkownik przewija koło myszy w przód, gdy mysz znajduje się nad elementem GUI.
Wystrzeliwany, gdy GuiObject jest skupiany za pomocą wyboru Gamepad.
Wystrzelony, gdy wybór Gamepada przestaje skupiać się na GuiObject.
Wystrzeliwuje, gdy gracz zaczyna, kontynuuje i zatrzymuje długie naciśnięcie elementu interfejsu.
- TouchPan(touchPositions : Array,totalTranslation : Vector2,velocity : Vector2,state : Enum.UserInputState):RBXScriptSignal
Wystrzeliwuje, gdy gracz przesuwa palec po elementze interfejsu.
- TouchPinch(touchPositions : Array,scale : number,velocity : number,state : Enum.UserInputState):RBXScriptSignal
Wystrzeliwuje, gdy gracz wykonuje gest przesuwania lub ciągnięcia za pomocą dwóch palców na element UI.
- TouchRotate(touchPositions : Array,rotation : number,velocity : number,state : Enum.UserInputState):RBXScriptSignal
Wystrzeliwuje, gdy gracz wykonuje gest rotacji za pomocą dwóch palców na element UI.
Wypala się, gdy gracz wykonuje gest przesuwania na element interfejsu użytkownika.
Wystrzeliwuje, gdy gracz wykonuje gest dotknięcia na element interfejsu.
- SelectionChanged(amISelected : boolean,previousSelection : GuiObject,newSelection : GuiObject):RBXScriptSignal
Wybucha, gdy wybór gamepada przenosi się do, opuszcza lub zmienia w ramach połączonego GuiBase2d lub dowolnego potomka GuiObjects.
Właściwości
Image
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
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
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
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
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
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.
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
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.
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
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.
ScaleType
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
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
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
Właściwość ta ustawia rozmiar płytek dla ImageLabel z domyślną wartością
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.
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