Kontenery UI na ekranie

*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.

Kontener ScreenGui przechowuje GuiObjects, które są wyświetlane na ekranie gracza, w tym ramki, etykiety, przyciski i inne. Wszystkie obiekty UI na ekranie i kod są przechowywane i zmieniane po stronie klienta.

Przykład ScreenGui z różnymi dziećmi GuiObject, w tym Ramką, TextLabel, TextBox i ImageButton.

Aby wyświetlić ScreenGui i jego dzieci GuiObjects dla każdego gracza, który dołącza do gry, umieść go wewnątrz kontenera StarterGui. Gdy gracz dołącza do gry i jego postać po raz pierwszy się pojawia, ScreenGui i jego zawartość są klonowane do kontenera PlayerGui dla tego gracza, znajdującego się w kontenerze Players.

Diagram pokazujący, jak ScreenGui klonuje się z StarterGui do PlayerGui gracza

W miarę rozwoju gry możesz potrzebować wielu interfejsów ekranowych, takich jak ekran tytułowy, menu ustawień, interfejs sklepu i inne. W takich przypadkach możesz umieścić wiele unikalnych kontenerów ScreenGui wewnątrz StarterGui i przełączać właściwość Enabled każdego kontenera w zależności od tego, czy powinien być widoczny i aktywny (gdy false, zawartość nie będzie renderowana, przetwarzać wejścia użytkownika ani aktualizować w odpowiedzi na zmiany).

Hierarchia eksploratora pokazująca wiele kontenerów ScreenGui, jeden włączony, a inne wyłączone, aby kontrolować, które są widoczne w danym czasie.

Właściwość Enabled może być początkowo przełączana przez okno Właściwości i/lub możesz ustawić ją w czasie gry z poziomu skryptu po stronie klienta, uzyskując dostęp do PlayerGui gracza i ustawiając ją na true lub false dla pożądanych kontenerów.

Właściwości kontenera

Następujące właściwości pozwalają dostosować wstawki ekranu na różnych urządzeniach, kolejność wyświetlania przy użyciu wielu kontenerów ekranowych i inne.

Wstawki ekranu

Nowoczesne telefony wykorzystują cały ekran, ale zazwyczaj mają wcięcia, wycięcia i inne elementy zajmujące miejsce na ekranie. Każda gra Roblox zawiera również kontrolki górnego paska dla szybkiego dostępu do głównego menu, czatu, rankingu i nie tylko.

Urządzenie mobilne pokazujące przyciski górnego paska Roblox oraz wycięcie urządzenia.

Aby zapewnić graczom łatwy dostęp do całego interfejsu użytkownika bez przeszkód, Roblox udostępnia właściwość ScreenInsets, która kontroluje wcięcia bezpiecznego obszaru dla zawartości ScreenGui.

Domyślna wartość CoreUISafeInsets utrzymuje wszystkie obiekty podrzędne GuiObjects wewnątrz bezpiecznego obszaru interfejsu użytkownika, z dala od przycisków górnego paska i innych wycięć ekranu. To ustawienie jest zalecane, jeśli ScreenGui zawiera interaktywne elementy interfejsu użytkownika.

Urządzenie mobilne pokazujące obszar bezpieczny interfejsu użytkownika.

Kolejność wyświetlania

Kiedy używasz wielu interfejsów ScreenGui, możesz je nakładać według indeksu Z przez właściwość DisplayOrder. Na przykład, aby wyświetlić modalne menu ustawień na jednym ScreenGui przed głównym interfejsem użytkownika gry na innym ScreenGui, przypisz wyższą wartość DisplayOrder do modalnego niż do interfejsu znajdującego się poniżej.

Resetowanie przy odrodzeniu

Właściwość logiczna ResetOnSpawn określa, czy ScreenGui resetuje się (usuwa się i ponownie klonuje do PlayerGui gracza) za każdym razem, gdy postać gracza się odradza.

WarunekResetuje
ResetOnSpawn jest true (domyślnie).
TAK
ScreenGui jest pośrednim potomkiem StarterGui; na przykład jest umieszczony wewnątrz Folder znajdującego się w StarterGui.
TAK
ResetOnSpawn jest false i ScreenGui jest bezpośrednim potomkiem StarterGui.
NIE

Uzyskaj dostęp do UI gracza

Jak wspomniano, umieszczenie ScreenGui w StarterGui klonuje go i jego dzieci GuiObjects do kontenera PlayerGui gracza, gdy dołącza do gry i jego postać po raz pierwszy się pojawia.

Jeśli musisz kontrolować kontener UI gracza w czasie gry, na przykład, aby pokazać/ukryć konkretny ScreenGui lub jakiekolwiek jego dzieci, uzyskaj do niego dostęp w następujący sposób z LocalScript:

LocalScript - Uzyskiwanie dostępu do UI gracza
local Players = game:GetService("Players")
local player = Players.LocalPlayer
local playerGui = player.PlayerGui
local titleScreen = playerGui:WaitForChild("TitleScreen")
local settingsMenu = playerGui:WaitForChild("SettingsMenu")
titleScreen.Enabled = false -- Ukryj ekran tytułowy
settingsMenu.Enabled = true -- Pokaż menu ustawień

Wyłącz domyślne UI

All Roblox games include several UI elements that are enabled by default. If you don't need any of these elements or if you want to replace them with your own creations, you can use the SetCoreGuiEnabled() method in a client‑side script with the associated Enum.CoreGuiType option.

Domyślny UIPowiązana enum
Dynamically updated Players list, commonly used as a leaderboard.Enum.CoreGuiType.PlayerList
Słupek zdrowia postaci Health. Nie pojawia się, jeśli Humanoid postaci ma pełne zdrowie.Enum.CoreGuiType.Health
Plecak postaci Backpack, który zawiera narzędzia w grze. Nie pojawia się, jeśli nie ma Tools w plecaku.Enum.CoreGuiType.Backpack
Okno czatu tekstowego.Enum.CoreGuiType.Chat
Menu wyskakujące z emotkami postaci.Enum.CoreGuiType.EmotesMenu
Okno wyświetlające perspektywę lub widok własnej postaci gracza. Nie pojawia się, chyba że gracz włączył Widok Własny w menu Roblox.Enum.CoreGuiType.SelfView
Przycisk zrób zrzut ekranu po prawej stronie ekranu. Nie pojawia się, chyba że gracz włączył Zrzuty w menu Roblox.Enum.CoreGuiType.Captures
Przełącznik Awatara pozwala użytkownikom na zmianę swojego awatara platformy.Enum.CoreGuiType.AvatarSwitcher
Elementy interfejsu użytkownika w każdej grze Roblox.
Skrypt Klienta - Wyłącz domyślne elementy UI
local StarterGui = game:GetService("StarterGui")
-- Wyłącz domyślny pasek zdrowia i plecak
StarterGui:SetCoreGuiEnabled(Enum.CoreGuiType.Health, false)
StarterGui:SetCoreGuiEnabled(Enum.CoreGuiType.Backpack, false)

Additionally, devices with touch capabilities include a virtual thumbstick and a jump button by default. If desired, you can hide these elements by setting GuiService.TouchControlsEnabled to false in a client‑side script.

Elementy interfejsu użytkownika dla urządzeń obsługujących dotyk w każdej grze Roblox.
Skrypt Klienta - Wyłącz elementy dotykowe
local GuiService = game:GetService("GuiService")
GuiService.TouchControlsEnabled = false
©2026 Roblox Corporation. Nazwa Roblox, logo Roblox oraz hasło „Powering Imagination” należą do naszych zarejestrowanych i niezarejestrowanych znaków towarowych na terenie Stanów Zjednoczonych oraz w innych krajach.