A TextBox 是一个长方形,允许用户在焦点时提供文本输入。当你 脚本 一个 TextBox 时,你可以将其用作搜索栏或表单上的输入字段。为了帮助用户知道应该输入哪种类型的文本,您还可以通过 PlaceholderText 属性提供提示。

因为这些对象是 GuiObjects , 你可以自定义属性,例如 BackgroundColor3 , BorderMode , Transparency , 和 Rotation 来适应你的体验的审美。
在屏幕上创建文本输入
屏幕上的 TextBox 对于像形式的输入字段有用。
要将 TextBox 添加到屏幕:
在 资源管理器 窗口中,选择 StarterGui 并添加一个 ScreenGui 。
将鼠标悬停在 StarterGui 上,单击 ⊕ 按钮。一个上下文菜单显示。
插入一个 ScreenGui 。
选择新的 ScreenGui 并添加一个 文本框 。
将鼠标悬停在 ScreenGui 上,然后单击 ⊕ 按钮。会话菜单显示。
插入一个 文本框 。
在零件表面上创建文本输入
要将 TextBox 添加到零件的面上:
在 资源管理器 窗口中,选择 StarterGui 并添加一个 SurfaceGui 。
将鼠标悬停在 StarterGui 上,单击 ⊕ 按钮。一个上下文菜单显示。
插入一个 ScreenGui 。
选择新的 SurfaceGui 并添加一个 文本框 。
将鼠标悬停在 表面图形用户界面 上,然后单击 ⊕ 按钮。将显示上下文菜单。
插入一个 文本框 。
向 SurfaceGui 添加到您想显示 文本框 的部分上。
在 属性 窗口中,选择 饰品 属性。您的鼠标指针将更改。
在 探索器 窗口中,选择零件。
脚本文本输入
像 按钮 一样,当用户与它互动时,你可以为 TextBox 对象执行任何行动。例如,以下脚本连接用户按下 FocusLost 按钮或单击方块子外部时触发的 Enter 事件。如果 enterPressed 是 true , 即用户提交了输入而不仅仅单击框子外,脚本将输入内容打印到 输出窗口 .
基本文本输入处理
local textBox = script.Parent
local function onFocusLost(enterPressed, inputObject)
if enterPressed then
print(textBox.Text)
end
end
textBox.FocusLost:Connect(onFocusLost)
另一个例子是,你可能想只允许在 TextBox 中使用数字。以下代码使用 TextBox.GetPropertyChangedSignal 事件检测当 TextBox.Text 发生变更时,例如当用户开始输入时,然后使用 string.gsub() 函数禁用非数字。
限制文本输入为数字
local textBox = script.Parent
local function allowOnlyNumbers()
textBox.Text = string.gsub(textBox.Text, "%D", "")
end
textBox:GetPropertyChangedSignal("Text"):Connect(allowOnlyNumbers)
文本筛选
应用于各种来源和输入,文本过滤 防止用户看到不当的语言和可识别的个人信息,例如电话号码。Roblox 自动过滤通过 体验文本聊天 的常见文本输出,例如消息,但 你对任何显示的文本负责过滤你没有明确控制权的任何内容,包括 props.context。