ImageButton
*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 ImageButton zachowuje się podobnie do An ImageLabel w odniesieniu do renderowania, z dodatkowymi zachowaniami GuiButton .
Podsumowanie
Właściwości
ID tekstury, które zostanie użyte, gdy ImageButton zostanie przewalone.
Treść obrazu wyświetlana przez element ImageButton. 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 adresy zasobów i obiekty 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 witryny Roblox.
ID tekstury, które zostanie użyte, gdy naciśnięto ImageButton .
Wybiera tryb odtwarzania obrazu dla przycisku.
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 skalę układu płytek przycisku obrazu.
Określa, czy przycisk automatycznie zmienia kolor, gdy mysz przewija się nad nim lub klika na niego.
Instancja HapticEffect, która zagra, gdy GuiButton zostanie przewieszona.
Jeśli true podczas gdy element GUI jest widoczny, mysz nie zostanie zamknięta, chyba że prawy przycisk myszy jest w dół.
Instancja HapticEffect, która zagra, gdy naciśnięto GuiButton.
Właściwość booleanowa, która wskazuje, czy obiekt został wybrany.
Ustawia styl GuiButton w oparciu o listę wcześniej określonych stylów.
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: GuiButtonWystrzeliwuje, gdy przycisk jest aktywowany.
Wystrzeliwuje, gdy mysz użytkownika w pełni kliknie GuiButton .
Wystrzeliwuje, gdy użytkownik naciśnie lewy przycisk myszy w dół na GuiButton.
Wystrzeliwuje, gdy użytkownik uwalnia lewy przycisk myszy z GuiButton.
Wystrzeliwuje, gdy mysz użytkownika w pełni kliknie prawym przyciskiem na GuiButton .
Wystrzeliwuje, gdy użytkownik naciśnie prawy przycisk myszy w dół na GuiButton.
Wystrzeliwuje, gdy użytkownik uwalnia prawy przycisk myszy z GuiButton.
Wystrzeliwany, 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
HoverImageContent
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.Wyrenderowany obraz zostanie skoloryzowany za pomocą ImageColor3 .
Zauważ, że można wyrenderować obraz jako płytki, skalowany do pasuje lub 9-sliced poprzez dostosowanie właściwości ScaleType.
Przykłady kodu
This code sample causes an ImageLabel/ImageButton to display a red padlock. When the mouse is hovered, it changes to a green unlocked padlock.
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
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.
Przykłady kodu
This code sample causes an ImageLabel/ImageButton to display a red padlock. When the mouse is hovered, it changes to a green unlocked padlock.
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()
ImageContent
Właściwość ta powinna zawierać URI zasobu lub odniesienie do obiektu EditableImage.Adres URL zasobu może odwoływać się do zdjęcia lub obrazu przesłanego do Roblox.Funkcjonuje identycznie do Decal.Texture w odniesieniu do ładowania obrazu.
Rendowany obraz zostanie skoloryzowany za pomocą ImageColor3 .Można wyrenderować obraz jako płytki, skalowany do pasuje lub 9-sliced poprzez dostosowanie właściwości ScaleType.
ImageRectOffset
Właściwość ta określa przesunięcie pikseli (z lewej góry) obszaru obrazu do wyświetlenia, umożliwiając częściowe wyświetlenie obrazu w połączeniu z ImageRectSize.
Przykłady kodu
This code sample uses ImageRectOffset/ImageRectSize in order to play an animation of a man throwing a punch
-- 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
ImageRectSize
Właściwość ta określa rozmiar piksela obszaru obrazu do wyświetlenia, umożliwiając częściowe wyświetlenie obrazu w połączeniu z ImageRectOffset.Jeśli którykolwiek wymiar jest ustawiony na 0, cały obraz jest wyświetlany zamiast tego.
Przykłady kodu
This code sample uses ImageRectOffset/ImageRectSize in order to play an animation of a man throwing a punch
-- 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
ImageTransparency
Właściwość ta określa alfa obrazu renderowanego elementu.Wartość 0 jest całkowicie niejasna, a wartość 1 jest całkowicie przejrzysta (niewidoczna).Właściwość ta zachowuje się podobnie do GuiObject.BackgroundTransparency lub BasePart.Transparency.
Jeśli wyłączysz renderowanie obrazów poprzez ustawienie ImageTransparency na 1, uzyskasz prosty prostokąt, który można użyć jako przycisk.Jednak może lepiej użyć pustego TextButton zamiast tego.
IsLoaded
Właściwość ta wskazuje, czy właściwość 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))
PressedImage
ID tekstury, które można ustawić jako właściwość ImageButton. Po naciśnięciu przycisku wyrenderuje to obraz.
PressedImageContent
ResampleMode
Określa, jak wygląda obraz, gdy jest skalowany.Domyślnie obraz wygładza teksturę, gdy jest wyświetlany większy lub mniejszy niż jego rozmiar w pamięci teksturowej.W przeciwieństwie do tego, Enum.ResamplerMode.Pixelated zachowuje ostre krawędzie pikseli obrazu.
ScaleType
Właściwość ta określa, w jaki sposób właściwość Image jest renderowana, 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 , gdy skalowanie w górę, krawędzie pozostaną rozmiarem obrazu źródłowego.Krawędzie obrazu rozciągną się do szerokości/wysokości obrazu.Wreszcie, centrum obrazu rozciągnie się, aby wypełnić środkową część obrazu.Aby dowiedzieć się więcej o 9-przyciętych obrazach, zobacz UI 9-Slice Design.
Dla Enum.ScaleType.Tile 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.
Aby dowiedzieć się więcej o 9-przyciętych obrazach, 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.
Jako mnożnik dla granic 9-plastra, jest użyteczny do ponownego wykorzystania jednego zaokrąglonego obrazu krawędzi dla wielu promieni.
Zobacz także ScaleType, który 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.
TileSize
Ustawia rozmiar płytek począwszy od górnego lewego kąta obrazu.Domyślne wartości UDim2 są
Właściwość ta jest aktywna tylko wtedy, gdy właściwość ScaleType jest ustawiona na Enum.ScaleType.Tile.