Thùng chứa ScreenGui hiển thị GuiObjects trên màn hình của người chơi, bao gồm khung , nhãn , nút và nhiều hơn nữa.Tất cả các đối tượng UI trên màn hình và mã được lưu và thay đổi trên máy khách

Để hiển thị một ScreenGui và con của nó GuiObjects cho mỗi người chơi tham gia trải nghiệm, đặt nó vào bên trong thùng chứa StarterGui.Khi một người chơi tham gia vào một trải nghiệm và nhân vật của họ xuất hiện lần đầu tiên, ScreenGui và nội dung của nó được nhân bản vào thùng chứa PlayerGui cho người chơi đó, nằm trong thùng chứa Players .

Khi một trải nghiệm phát triển theo phạm vi, bạn có thể cần nhiều giao diện màn hình như màn hình tiêu đề, menu cài đặt, giao diện cửa hàng và nhiều hơn nữa.Trong những trường hợp như vậy, bạn có thể đặt nhiều thùng chứa duy nhất ScreenGui bên trong StarterGui và chuyển đổi từng thuộc tính của mỗi thùng chứa Enabled tùy thuộc vào việc nó có nên hiển thị và hoạt động (trong khi false, nội dung sẽ không được hiển thị, xử lý đầu vào của người dùng hoặc cập nhật đáp ứng lại các thay đổi).

Thuộc tính có thể ban đầu được chuyển đổi thông qua cửa sổ Tính năng và/hoặc bạn có thể đặt nó trong thời gian chơi từ một kịch bản bên khách bằng cách truy cập vào người chơi's và đặt nó thành hoặc đối với các thùng chứa mong muốn.
Thuộc tính của container
Các thuộc tính sau cho phép bạn tùy chỉnh các khối hiển thị trên màn hình trên nhiều thiết bị, thứ tự hiển thị khi sử dụng nhiều thùng chứa màn hình, và nhiều hơn nữa.
Các khối chèn màn hình
Các điện thoại hiện đại tận dụng toàn bộ màn hình nhưng thường bao gồm các khuyết, cắt và các yếu tố khác chiếm không gian màn hình.Mỗi trải nghiệm Roblox cũng bao gồm các điều khiển thanh trên cùng cho truy cập nhanh vào menu chính, trò chuyện , bảng xếp hạng , và nhiều hơn nữa.

Để đảm bảo người chơi có thể dễ dàng nhìn thấy và truy cập tất cả các giao diện người dùng mà không có sự cản trở, Roblox cung cấp thuộc tính ScreenInsets kiểm soát khu vực an toàn cho nội dung của một ScreenGui .
Mặc định của CoreUISafeInsets giữ tất cả các con trai GuiObjects bên trong khu vực an toàn UI chính, loại bỏ các nút thanh trên cùng và các cắt màn hình khác.Cài đặt này được đề xuất nếu ScreenGui có chứa các thành phần UI tương tác.

Hiển thị thứ tự
Khi sử dụng nhiều giao diện ScreenGui khác nhau, bạn có thể xếp chúng theo thứ tự Z‑index thông qua thuộc tính DisplayOrder của chúng.Ví dụ, để hiển thị một menu cài đặt bật lên trên một ScreenGui trước giao diện chính người dùng của trải nghiệm trên một ScreenGui khác, gán một cấp cao hơn DisplayOrder cho menu bật lên hơn giao diện cơ sở.
Đặt lại khi sinh sản
Thuộc tính boolean ResetOnSpawn xác định xem có phải ScreenGui đặt lại (tự xóa bản thân và sao chép lại vào nhân vật của người chơi PlayerGui) mỗi khi nhân vật của người chơi tái sinh.
Điều kiện | Đặt lại |
---|---|
ResetOnSpawn là true (mặc định). | yes |
The ScreenGui là một con cháu gián tiếp của StarterGui ; ví dụ nó được đặt bên trong một Folder nằm trong StarterGui . | yes |
ResetOnSpawn là false và ScreenGui là một con cháu trực tiếp của StarterGui . | no |
Truy cập UI người chơi
Như đã lưu ý, nuôi dưỡng một ScreenGui đến StarterGui nhân bản nó và con của nó GuiObjects vào một khối chứa của người chơi PlayerGui khi họ tham gia vào trải nghiệm và nhân vật của họ đầu tiên xuất hiện.
Nếu bạn cần kiểm soát container UI của một người chơi trong thời gian chơi, ví dụ để hiển thị/ẩn một cụ thể ScreenGui hoặc bất kỳ con của nó, truy cập nó như sau từ một LocalScript :
LocalScript - Truy cập một người chơi's UI
local Players = game:GetService("Players")local player = Players.LocalPlayerlocal playerGui = player.PlayerGuilocal titleScreen = playerGui:WaitForChild("TitleScreen")local settingsMenu = playerGui:WaitForChild("SettingsMenu")titleScreen.Enabled = false -- Ẩn màn hình tiêu đềsettingsMenu.Enabled = true -- Show settings menu
Vô hiệu hóa giao diện mặc định UI
Tất cả các trải nghiệm Roblox bao gồm một số thành phần UI được bật mặc định.Nếu bạn không cần bất kỳ thành phần nào trong số này hoặc muốn thay thế chúng bằng sáng tạo của riêng bạn, bạn có thể sử dụng phương pháp SetCoreGuiEnabled() trong kịch bản bên khách với tùy chọn Enum.CoreGuiType đi kèm.
Giao diện mặc định | Liên kết enum |
---|---|
Danh sách được cập nhật năng động Players được sử dụng phổ biến như một bảng xếp hạng . | Enum.CoreGuiType.PlayerList |
Thanh nhân vật Health của nhân vật. Không xuất hiện nếu nhân vật của bạn Humanoid ở trạng thái sức khỏe tối đa. | Enum.CoreGuiType.Health |
Nhân vật của Backpack chứa công cụ trong kinh nghiệm . Không xuất hiện nếu không có Tools trong ba lô. | Enum.CoreGuiType.Backpack |
Cửa sổ trò chuyện văn bản. | Enum.CoreGuiType.Chat |
Menu bật lên của nhân vật biểu cảm . | Enum.CoreGuiType.EmotesMenu |
Một cửa sổ hiển thị quan điểm hoặc cái nhìn của người chơi về nhân vật của riêng họ.Không xuất hiện trừ khi người chơi đã bật Tự xem từ menu Roblox. | Enum.CoreGuiType.SelfView |
Một nút chụp ảnh màn hình ở bên phải của màn hình.Không xuất hiện trừ khi người chơi đã bật Bắt giữ từ menu Roblox. | Enum.CoreGuiType.Captures |

Tập lệnh khách hàng - Vô hiệu hóa các thành phần UI mặc định
local StarterGui = game:GetService("StarterGui")-- Vô hiệu hóa thanh sức khỏe và ba lô mặc địnhStarterGui:SetCoreGuiEnabled(Enum.CoreGuiType.Health, false)StarterGui:SetCoreGuiEnabled(Enum.CoreGuiType.Backpack, false)
Ngoài ra, các thiết bị có khả năng chạm bao gồm một cần gạt ảo và một nút nhảy mặc định.Nếu cần, bạn có thể ẩn các thành phần này bằng cách đặt GuiService.TouchControlsEnabled đến false trong một kịch bản bên khách.

Tập lệnh khách hàng - Vô hiệu hóa điều khiển chạm
local GuiService = game:GetService("GuiService")GuiService.TouchControlsEnabled = false